.about-section .about-title,
.about-section .dropcap:first-letter,
.brand-title,
.homepage-hero .hero-title,
.homepage-hero .stat h3,
.indigent-section .indigent-title,
.services-section .service-card h3,
.services-section .services-title {
  font-family: "Cormorant Garamond", serif
}

.about-section .overline,
.archive-strip .archive-label,
.author-bio .overline,
.books-detail .book-tag,
.books-detail .overline-dark,
.books-section .badge,
.books-section .book-year,
.books-section .overline,
.brand-sub,
.cta-section .overline,
.fees-section .overline,
.footer .footer-heading,
.footer .overline,
.home-videos .overline,
.homepage-hero .mono,
.homepage-hero .overline,
.indigent-section .overline,
.inner-hero .overline,
.insights-section .insight-type,
.insights-section .overline,
.media-articles .media-content p,
.media-articles .media-meta span,
.media-featured .media-caption,
.methodology-section .overline,
.peer-review .peer-label,
.philosophy-section .overline,
.profile-bio .badge-text,
.profile-bio .overline,
.profile-hero .overline,
.profile-stats .stat-label,
.services-detail .service-index,
.services-methodology .method-number,
.services-methodology .overline,
.services-section .card-number,
.services-section .overline,
.testimonial-section .author {
  text-transform: uppercase;
  text-transform: uppercase
}

.cta-section .btn-secondary img.emoji,
a[href^=tel] img.emoji {
  filter: brightness(0) invert(1)
}

.utility-bar {
  background: #1e293b;
  padding: 10px 0
}

p.utility-text.mb-0 {
  color: #fff;
  font-size: 14px
}

.utility-links a {
  color: rgba(255, 255, 255, .7);
  margin-left: 20px;
  text-decoration: none;
  font-size: 12px
}

.navbar {
  padding: 26px 0;
  border-bottom: 1px solid rgba(255, 255, 255, .06);
  backdrop-filter: blur(14px);
  background: linear-gradient(to bottom, rgba(15, 23, 42, .78), rgba(15, 23, 42, .58))
}

.navbar-brand {
  text-decoration: none;
  color: inherit !important
}

.brand-wrap {
  display: flex;
  flex-direction: column;
  line-height: 1
}

.brand-title {
  font-size: 30px;
  font-weight: 600;
  letter-spacing: -.03em;
  color: #f8fafc
}

.brand-sub {
  margin-top: 6px;
  font-size: 11px;
  letter-spacing: 2px;
  color: rgba(255, 255, 255, .58)
}

.navbar-nav {
  gap: 34px
}

.navbar-nav li {
  list-style: none
}

.navbar-nav .menu-item a {
  position: relative;
  font-size: 14px;
  letter-spacing: .4px;
  color: rgba(255, 255, 255, .74);
  text-decoration: none;
  transition: .3s
}

.navbar-nav .menu-item a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -8px;
  width: 0;
  height: 1px;
  background: #d4af37;
  transition: width .3s
}

.navbar-nav .menu-item a:hover,
.services-methodology .method-item:hover #method-text {
  color: #fff
}

.navbar-nav .menu-item a:hover::after,
.questionnaire-form .wpcf7,
.questionnaire-form .wpcf7-form,
.questionnaire-wrapper .wpcf7 {
  width: 100%
}

.nav-cta {
  margin-left: 40px
}

.btn-retain {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 50px;
  padding: 0 28px;
  border-radius: 0;
  background: #7c1b24;
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  transition: .35s
}

.btn-retain:hover {
  transform: translateY(-2px);
  background: #fff;
  color: #0f172a
}

.navbar-toggler {
  border: none;
  box-shadow: none !important;
  padding: 0
}

.navbar-toggler-icon {
  width: 28px;
  height: 2px;
  background: #fff;
  position: relative
}

.navbar-toggler-icon::after,
.navbar-toggler-icon::before {
  content: "";
  position: absolute;
  left: 0;
  width: 28px;
  height: 2px;
  background: #fff
}

.navbar-toggler-icon::before {
  top: -8px
}

.navbar-toggler-icon::after {
  top: 8px
}

.homepage-hero .gradient {
  inset: 0;
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(15, 23, 42, .18), rgba(15, 23, 42, .96))
}

.homepage-hero .hero-title {
  letter-spacing: -.05em
}

.footer .footer-contact a:hover,
.footer .footer-link:hover,
.homepage-hero .hero-degree {
  opacity: .7
}

.homepage-hero .hero-title-image img {
  object-fit: contain
}

.homepage-hero .hero-grid {
  margin-top: 70px
}

.homepage-hero .btn-alt,
.homepage-hero .btn-main {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 54px
}

@media (max-width:991px) {
  .homepage-hero .hero-main {
    padding-top: 60px
  }

  .homepage-hero .hero-title {
    font-size: clamp(60px, 14vw, 120px)
  }

  .homepage-hero .hero-actions {
    justify-content: flex-start !important
  }

  .homepage-hero .hero-title-image img {
    margin: auto
  }

  .homepage-hero .stat {
    border-left: none;
    border-top: 1px solid rgba(255, 255, 255, .08)
  }
}

@media (max-width:767px) {
  .utility-bar {
    display: none
  }

  .navbar {
    padding: 22px 0
  }

  .brand-title {
    font-size: 24px
  }

  .homepage-hero {
    min-height: auto
  }

  .homepage-hero .hero-title {
    font-size: 52px
  }

  .homepage-hero .hero-degree {
    font-size: 20px
  }

  .homepage-hero .hero-text {
    font-size: 17px
  }
}

.homepage-hero {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  background: #0f172a;
  color: #f8fafc
}

.homepage-hero .bg {
  position: absolute;
  inset: 0;
  z-index: 1
}

.homepage-hero .bg img {
  opacity: .14;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .16
}

.homepage-hero .radial {
  inset: 0;
  position: absolute;
  top: -10%;
  right: -5%;
  width: 60%;
  height: 60%;
  background: radial-gradient(circle, rgba(30, 41, 59, .65), transparent 70%);
  filter: blur(40px)
}

.homepage-hero .grain {
  position: absolute;
  inset: 0;
  opacity: .05;
  mix-blend-mode: overlay;
  background-image: url("https://www.transparenttextures.com/patterns/asfalt-dark.png")
}

.homepage-hero .hero-main,
.homepage-hero .hero-stats,
.homepage-hero .hero-strip {
  position: relative;
  z-index: 5
}

.homepage-hero .hero-strip {
  padding: 18px 0;
  border-bottom: 1px solid rgba(248, 250, 252, .08)
}

.homepage-hero .dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #7c1b24
}

.homepage-hero .mono {
  font-size: 12px;
  letter-spacing: 1.5px;
  font-weight: 700;
  color: #7c1b24
}

.homepage-hero .hero-main {
  padding-top: 110px
}

.homepage-hero .overline {
  margin-bottom: 28px;
  font-size: 11px;
  letter-spacing: 2px;
  color: rgba(248, 250, 252, .58)
}

.homepage-hero .hero-title {
  margin: 0;
  font-size: clamp(72px, 10vw, 170px);
  line-height: .9;
  letter-spacing: -.06em;
  color: #f8fafc
}

.homepage-hero .hero-degree {
  display: block;
  margin-top: 20px;
  font-size: 26px;
  letter-spacing: 2px;
  text-align: right;
  color: #96232e
}

.homepage-hero .hero-title-wrap {
  margin-bottom: 80px
}

.author-bio .author-text,
.author-content,
.homepage-hero .hero-title-image,
.profile-bio .bio-content,
.trial-product-image {
  position: relative
}

.about-section::before,
.indigent-section::before,
.services-section::before {
  position: absolute;
  pointer-events: none;
  content: "";
  inset: 0
}

.homepage-hero .hero-title-image img {
  max-height: 420px;
  object-fit: contain;
  margin-left: auto;
  filter: drop-shadow(0 25px 70px rgba(0, 0, 0, .45))
}

.homepage-hero .hero-content-row {
  padding-bottom: 30px
}

.homepage-hero .hero-text {
  max-width: 620px;
  font-size: 20px;
  line-height: 1.9;
  color: rgba(248, 250, 252, .78)
}

.homepage-hero .btn-alt,
.homepage-hero .btn-main {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: 0 30px;
  border-radius: 0;
  text-decoration: none;
  transition: .35s
}

.homepage-hero .btn-main {
  background: #7c1b24;
  color: #fff
}

.homepage-hero .btn-main:hover {
  background: #fff;
  color: #0f172a;
  transform: translateY(-2px)
}

.about-section .btn-ghost:hover,
.homepage-hero .btn-alt:hover,
.services-section .btn-ghost:hover {
  background: rgba(255, 255, 255, .06);
  transform: translateY(-2px)
}

.homepage-hero .btn-alt {
  border: 1px solid rgba(255, 255, 255, .12);
  background: rgba(255, 255, 255, .02);
  color: #f8fafc
}

.homepage-hero .hero-stats {
  margin-top: 120px;
  border-top: 1px solid rgba(248, 250, 252, .08)
}

.homepage-hero .stat {
  padding: 44px;
  border-left: 1px solid rgba(248, 250, 252, .08);
  background: linear-gradient(to bottom, rgba(255, 255, 255, .015), transparent)
}

.homepage-hero .stat h3 {
  margin-bottom: 10px;
  font-size: 54px;
  line-height: 1;
  color: #f8fafc
}

.homepage-hero .stat p {
  margin: 0;
  color: rgba(248, 250, 252, .62)
}

@media (max-width:991px) {
  .homepage-hero .hero-main {
    padding-top: 70px
  }

  .homepage-hero .hero-title {
    font-size: clamp(60px, 14vw, 120px)
  }

  .homepage-hero .hero-title-wrap {
    margin-bottom: 60px
  }

  .homepage-hero .hero-actions {
    justify-content: flex-start !important
  }

  .homepage-hero .hero-title-image img {
    margin: auto;
    max-height: 320px
  }

  .homepage-hero .stat {
    border-left: none;
    border-top: 1px solid rgba(248, 250, 252, .08)
  }
}

.about-section,
.services-section {
  position: relative;
  padding: 140px 0;
  background: #0f172a;
  color: #f8fafc;
  overflow: hidden
}

.about-section::before {
  background: radial-gradient(circle at top left, rgba(30, 41, 59, .35), transparent 45%)
}

.about-section .overline {
  margin-bottom: 18px;
  font-size: 11px;
  letter-spacing: 2px;
  color: #96232e
}

.about-section .about-title {
  font-size: clamp(32px, 5vw, 52px);
  color: #f8fafc
}

.about-section .about-text {
  font-size: 18px;
  line-height: 1.95;
  color: rgba(248, 250, 252, .76)
}

.about-section .dropcap:first-letter {
  float: left;
  font-size: 78px;
  line-height: .82;
  padding-right: 12px;
  margin-top: 8px;
  color: #f8fafc
}

.about-section .about-links,
.cta-section .cta-actions,
.profile-cta .cta-buttons {
  margin-top: 10px
}

.about-section .btn-ghost,
.services-section .btn-ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 0 28px;
  border-radius: 999px;
  border: 1px solid rgba(248, 250, 252, .12);
  background: rgba(255, 255, 255, .02);
  color: #f8fafc;
  text-decoration: none;
  transition: .35s
}

.about-section .btn-ghost:hover {
  color: #7c1b24
}

@media (max-width:991px) {
  .about-section {
    padding: 100px 0
  }

  .about-section .about-title {
    margin-bottom: 20px
  }
}

.indigent-section {
  position: relative;
  padding: 140px 0;
  background: #111827;
  color: #f8fafc;
  overflow: hidden;
  border-top: 1px solid rgba(248, 250, 252, .06);
  border-bottom: 1px solid rgba(248, 250, 252, .06)
}

.indigent-section::before {
  background: radial-gradient(circle at bottom right, rgba(30, 41, 59, .45), transparent 42%)
}

.indigent-section .overline {
  font-size: 11px;
  letter-spacing: 2px;
  color: #96232e
}

.indigent-section .indigent-title {
  font-size: clamp(40px, 5vw, 42px);
  color: #f8fafc
}

.indigent-section .indigent-text {
  font-size: 18px;
  line-height: 1.95;
  color: rgba(248, 250, 252, .76);
  max-width: 720px
}

@media (max-width:991px) {
  .indigent-section {
    padding: 100px 0
  }

  .indigent-section .indigent-title {
    margin-bottom: 10px
  }
}

.services-section::before {
  background: radial-gradient(circle at top right, rgba(30, 41, 59, .42), transparent 42%)
}

.services-section .overline {
  font-size: 12px;
  letter-spacing: 2px;
  color: #96232e
}

.services-section .services-title {
  font-size: clamp(42px, 5vw, 52px);
  line-height: .95;
  letter-spacing: -.04em;
  color: #f8fafc
}

.services-section .btn-ghost:hover {
  color: #96232e
}

.archive-strip .archive-inner,
.author-bio .author-grid,
.books-detail .books-list,
.contact-section .contact-wrap,
.contact-section .wpcf7-form,
.cta-section .cta-content,
.fees-section .fees-wrapper,
.home-videos .videos-grid,
.inner-hero .inner-hero-content,
.inner-hero.hero-left .inner-hero-content,
.media-featured .media-featured-grid,
.media-reel .media-reel-inner,
.media-videos .media-grid,
.peer-review .peer-inner,
.profile-cta .profile-cta-content,
.profile-hero .profile-content,
.profile-stats .stats-grid,
.services-detail .services-list,
.services-methodology .methodology-grid,
.services-section .services-grid,
.sitemap-page .col-md-4>*,
.testimonial-section .testimonial-content {
  position: relative;
  z-index: 2
}

.services-section .service-card {
  height: 100%;
  padding: 48px;
  border-radius: 24px;
  background: linear-gradient(to bottom, rgba(30, 41, 59, .55), rgba(15, 23, 42, .92));
  border: 1px solid rgba(248, 250, 252, .06);
  transition: .35s;
  overflow: hidden;
  backdrop-filter: blur(10px)
}

.services-section .service-card:hover {
  transform: translateY(-6px);
  border-color: rgba(248, 250, 252, .14);
  background: linear-gradient(to bottom, rgba(30, 41, 59, .72), rgba(15, 23, 42, .96))
}

.services-section .card-top {
  margin-bottom: 38px
}

.services-section .card-number {
  font-size: 12px;
  letter-spacing: 2px;
  color: rgba(248, 250, 252, .45)
}

.services-section .card-arrow {
  font-size: 22px;
  color: rgba(248, 250, 252, .72)
}

.services-section .service-card h3 {
  margin-bottom: 20px;
  font-size: 36px;
  line-height: 1.05;
  letter-spacing: -.03em;
  color: #f8fafc
}

.services-section .service-desc {
  margin-bottom: 28px;
  font-size: 17px;
  line-height: 1.9;
  color: rgba(248, 250, 252, .74)
}

.services-section .service-features {
  margin: 0;
  padding-left: 18px
}

.services-section .service-features li {
  margin-bottom: 14px;
  line-height: 1.7;
  color: rgba(248, 250, 252, .68)
}

@media (max-width:991px) {
  .services-section {
    padding: 100px 0
  }

  .services-section .services-title {
    margin-bottom: 10px
  }

  .services-section .service-card {
    padding: 40px
  }
}

.methodology-section {
  padding: 120px 0;
  background: #fdfbf7;
  color: #0a1128
}

.methodology-section .overline {
  font-size: 12px;
  letter-spacing: .22em;
  color: #7c1b24;
  margin-bottom: 24px
}

.methodology-section .method-title {
  font-family: "Cormorant Garamond";
  font-size: clamp(40px, 4vw, 64px);
  line-height: 1.02;
  color: #0a1128
}

.methodology-section .method-desc {
  margin-top: 20px;
  color: #4a4d59;
  line-height: 1.7;
  max-width: 420px
}

.methodology-section .method-list,
.methodology-section .vowel-list {
  margin-top: 50px;
  border-top: 1px solid #e2dec6
}

.methodology-section .method-item {
  gap: 24px;
  padding: 32px 0;
  border-bottom: 1px solid #e2dec6
}

.methodology-section .method-number {
  min-width: 48px;
  font-family: "IBM Plex Mono";
  font-size: 12px;
  letter-spacing: .2em;
  color: #7c1b24;
  padding-top: 6px
}

.methodology-section .method-item h3 {
  font-family: "Cormorant Garamond";
  font-size: 28px;
  color: #0a1128;
  margin-bottom: 10px
}

.methodology-section .method-item p,
.methodology-section .vowel-text {
  color: #4a4d59;
  line-height: 1.7
}

.methodology-section .vowel-title {
  font-family: "Cormorant Garamond";
  font-size: clamp(32px, 3vw, 48px);
  line-height: 1.08;
  color: #0a1128
}

.methodology-section .vowel-item {
  display: grid;
  grid-template-columns: 70px 1fr;
  gap: 24px;
  padding: 28px 0;
  border-bottom: 1px solid #e2dec6;
  align-items: flex-start
}

.methodology-section .vowel-letter {
  font-family: "Cormorant Garamond";
  font-size: 56px;
  line-height: .8;
  color: #7c1b24;
  font-style: italic
}

.methodology-section .vowel-heading {
  font-family: "Cormorant Garamond";
  font-size: 26px;
  color: #0a1128;
  margin-bottom: 6px
}

@media (max-width:991px) {
  .methodology-section {
    padding: 100px 0
  }

  .methodology-section .method-desc {
    max-width: 100%
  }
}

.books-section {
  padding: 140px 0;
  background: #1e2a3f;
  color: #fdfbf7;
  overflow: hidden;
  position: relative
}

.books-section .books-header,
.home-videos .videos-header,
.insights-section .insights-header,
.section-heading {
  margin-bottom: 70px
}

.books-section .overline,
.home-videos .overline {
  font-size: 12px;
  letter-spacing: .22em;
  color: #96232e;
  margin-bottom: 18px
}

.books-section .books-title {
  font-family: "Cormorant Garamond";
  font-size: clamp(44px, 5vw, 78px);
  line-height: .95;
  letter-spacing: -.04em;
  color: #fdfbf7;
  margin-bottom: 20px
}

.books-section .books-sub {
  max-width: 620px;
  font-size: 18px;
  line-height: 1.8;
  color: rgba(253, 251, 247, .74)
}

.books-section .btn-ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 0 28px;
  border-radius: 999px;
  border: 1px solid rgba(253, 251, 247, .12);
  background: rgba(255, 255, 255, .03);
  color: #fdfbf7;
  text-decoration: none;
  transition: .35s
}

.books-section .btn-ghost:hover {
  background: rgba(255, 255, 255, .08);
  color: #96232e;
  transform: translateY(-2px)
}

.books-section .books-slider {
  overflow: visible
}

.books-section .swiper-slide {
  height: auto
}

.books-section .book {
  height: 100%;
  border-radius: 26px;
  overflow: hidden;
  background: linear-gradient(to bottom, rgba(255, 255, 255, .04), rgba(255, 255, 255, .02));
  border: 1px solid rgba(253, 251, 247, .06);
  transition: .35s;
  backdrop-filter: blur(12px)
}

.books-section .book:hover {
  transform: translateY(-6px);
  border-color: rgba(253, 251, 247, .12)
}

.books-slider .book-image {
  height: 250px;
  width: 100%;
  overflow: hidden
}

.books-slider .book-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center
}

.books-section .book:hover .book-image img,
.insights-section .video-card:hover .video-thumb img {
  transform: scale(1.04)
}

.books-section .book-content {
  padding: 32px
}

.books-section .book-year {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  letter-spacing: .2em;
  color: rgba(253, 251, 247, .55);
  margin-bottom: 18px
}

.books-section .badge {
  padding: 6px 12px;
  border-radius: 999px;
  background: #7c1b24;
  color: #fdfbf7;
  font-size: 10px;
  letter-spacing: .14em;
  position: absolute;
  top: -12px;
  left: 12px
}

.home-videos,
.insights-section,
.insights-section .video-thumb {
  position: relative;
  overflow: hidden
}

.books-section .book h3 {
  font-family: "Cormorant Garamond";
  font-size: 36px;
  line-height: 1.05;
  color: #fdfbf7;
  margin-bottom: 16px
}

.books-section .book-tag {
  font-size: 16px;
  line-height: 1.8;
  color: rgba(253, 251, 247, .74);
  margin-bottom: 0
}

.books-section .book-desc {
  padding: 0 32px 32px;
  color: rgba(253, 251, 247, .68);
  line-height: 1.8
}

.books-section .swiper-button-next,
.books-section .swiper-button-prev {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .04);
  border: 1px solid rgba(253, 251, 247, .08);
  color: #fdfbf7;
  transition: .3s
}

.books-section .swiper-button-next:hover,
.books-section .swiper-button-prev:hover {
  background: rgba(255, 255, 255, .1)
}

.books-section .swiper-button-next::after,
.books-section .swiper-button-prev::after {
  font-size: 16px
}

@media (max-width:991px) {
  .books-section {
    padding: 100px 0
  }

  .books-section .books-header {
    margin-bottom: 50px
  }

  .books-section .book-image {
    height: 420px
  }
}

.insights-section {
  padding: 140px 0;
  background: #fdfbf7;
  color: #0a1128
}

.insights-section .overline {
  font-size: 12px;
  letter-spacing: .22em;
  color: #7c1b24;
  margin-bottom: 18px
}

.insights-section .overline.small {
  font-size: 11px;
  margin-bottom: 0;
  color: #96232e
}

.insights-section .insights-title {
  font-family: "Cormorant Garamond";
  font-size: clamp(44px, 5vw, 52px);
  color: #0a1128
}

.insights-section .btn-ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 0 28px;
  border-radius: 999px;
  border: 1px solid rgba(10, 17, 40, .1);
  background: 0 0;
  color: #0a1128;
  text-decoration: none;
  transition: .35s
}

.insights-section .btn-ghost:hover {
  background: 0 0;
  color: #96232e;
  transform: translateY(-2px)
}

.insights-section .insights-list {
  border-top: 1px solid rgba(10, 17, 40, .1)
}

.insights-section .insight-item {
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 24px;
  padding: 32px 0;
  border-bottom: 1px solid rgba(10, 17, 40, .1);
  text-decoration: none;
  transition: .35s
}

.insights-section .insight-item:hover {
  padding-left: 12px
}

.insights-section .insight-type {
  font-size: 11px;
  letter-spacing: .18em;
  color: #7c1b24;
  padding-top: 8px
}

.insights-section .insight-item h3 {
  font-family: "Cormorant Garamond";
  font-size: 34px;
  line-height: 1.05;
  color: #0a1128;
  margin-bottom: 10px
}

.insights-section .insight-item p {
  color: #4a4d59;
  line-height: 1.7;
  margin-bottom: 0
}

.insights-section .video-card,
.related-product-card a {
  display: block;
  text-decoration: none;
  color: inherit
}

.cta-section .btn-primary,
.cta-section .btn-secondary {
  display: inline-flex;
  min-height: 58px;
  transition: .35s;
  text-decoration: none
}

.insights-section .video-thumb {
  border-radius: 24px;
  margin-bottom: 26px
}

.insights-section .video-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .5s
}

.insights-section .video-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(10, 17, 40, .45), rgba(10, 17, 40, .1))
}

.insights-section .play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 88px;
  height: 88px;
  border-radius: 50%;
  background: rgba(253, 251, 247, .9);
  backdrop-filter: blur(8px)
}

.insights-section .play-btn::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-42%, -50%);
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  border-left: 18px solid #0a1128
}

.insights-section .video-content h3 {
  font-family: "Cormorant Garamond";
  font-size: 38px;
  line-height: 1.08;
  color: #0a1128;
  margin-bottom: 16px
}

@media (max-width:991px) {
  .insights-section {
    padding: 100px 0
  }

  .insights-section .insights-header {
    margin-bottom: 50px
  }
}

.home-videos {
  padding: 140px 0;
  background: #1e2a3f;
  color: #fdfbf7
}

.home-videos .videos-title {
  font-family: "Cormorant Garamond";
  font-size: clamp(44px, 5vw, 52px);
  line-height: .95;
  letter-spacing: -.04em;
  color: #fdfbf7
}

.home-videos .video-card {
  height: 100%;
  border-radius: 24px;
  overflow: hidden;
  background: linear-gradient(to bottom, rgba(255, 255, 255, .04), rgba(255, 255, 255, .02));
  border: 1px solid rgba(253, 251, 247, .06);
  transition: .35s;
  backdrop-filter: blur(10px)
}

.home-videos .video-frame,
.testimonial-section {
  background: #0a1128;
  position: relative;
  overflow: hidden
}

.home-videos .video-card:hover {
  transform: translateY(-6px);
  border-color: rgba(253, 251, 247, .14)
}

.home-videos .video-frame {
  width: 100%;
  padding-top: 56.25%
}

.home-videos .video-frame iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%
}

.home-videos .video-content,
.media-videos .video-content {
  padding: 28px
}

.home-videos .video-title {
  font-family: "Cormorant Garamond";
  font-size: 24px;
  line-height: 1.08;
  color: #fdfbf7;
  margin: 0
}

@media (max-width:991px) {
  .home-videos {
    padding: 100px 0
  }

  .home-videos .videos-header {
    margin-bottom: 50px
  }
}

.testimonial-section {
  padding: 160px 0;
  color: #fdfbf7
}

.profile-cta .grain,
.testimonial-section .grain {
  position: absolute;
  inset: 0;
  opacity: .04;
  pointer-events: none;
  mix-blend-mode: overlay;
  background-image: url("https://www.transparenttextures.com/patterns/asfalt-dark.png")
}

.testimonial-section .quote-icon {
  font-size: 82px;
  line-height: 1;
  color: #96232e;
  text-align: left;
  font-family: "Cormorant Garamond"
}

.testimonial-section .testimonial-quote {
  margin: 0 auto;
  max-width: 1100px;
  font-family: "Cormorant Garamond";
  font-size: clamp(34px, 4vw, 52px);
  line-height: 1.12;
  letter-spacing: -.03em;
  color: #fdfbf7
}

.philosophy-section .philosophy-features,
.testimonial-section .testimonial-footer {
  margin-top: 60px
}

.testimonial-section .line {
  width: 80px;
  height: 1px;
  background: #96232e
}

.testimonial-section .author {
  font-size: 16px;
  letter-spacing: .08em;
  color: #fdfbf7;
  text-align: left
}

.testimonial-section .source {
  font-size: 14px;
  color: rgba(253, 251, 247, .58)
}

@media (max-width:991px) {
  .testimonial-section {
    padding: 120px 0
  }

  .testimonial-section .testimonial-footer {
    margin-top: 50px
  }
}

.cta-section {
  position: relative;
  padding: 160px 0;
  background: #7c1b24;
  color: #fdfbf7;
  overflow: hidden
}

.cta-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top, rgba(253, 251, 247, .08), transparent 45%);
  pointer-events: none
}

.cta-section .overline {
  margin-bottom: 22px;
  font-size: 12px;
  letter-spacing: .22em;
  color: rgba(253, 251, 247, .72)
}

.cta-section .cta-title {
  margin-bottom: 28px;
  font-family: "Cormorant Garamond";
  font-size: clamp(48px, 5vw, 52px);
  line-height: .95;
  letter-spacing: -.04em;
  color: #fdfbf7
}

.cta-section .cta-text {
  max-width: 760px;
  margin: 0 auto 42px;
  font-size: 19px;
  line-height: 1.9;
  color: rgba(253, 251, 247, .82)
}

.cta-section .btn-primary {
  align-items: center;
  justify-content: center;
  padding: 0 34px;
  border-radius: 999px;
  background: #fdfbf7;
  color: #7c1b24;
  font-size: 15px;
  font-weight: 500
}

.cta-section .btn-primary:hover {
  transform: translateY(-2px);
  background: #fff;
  color: #7c1b24
}

.cta-section .btn-secondary {
  align-items: center;
  justify-content: center;
  padding: 0 32px;
  border-radius: 999px;
  border: 1px solid rgba(253, 251, 247, .18);
  background: rgba(255, 255, 255, .05);
  color: #fdfbf7;
  backdrop-filter: blur(10px)
}

.cta-section .btn-secondary:hover {
  background: rgba(255, 255, 255, .12);
  transform: translateY(-2px);
  color: #fff
}

@media (max-width:991px) {
  .cta-section {
    padding: 120px 0
  }
}

.footer {
  padding: 120px 0 50px;
  background: #0a1128;
  color: #fdfbf7;
  position: relative;
  overflow: hidden
}

.footer .footer-main {
  padding-bottom: 70px;
  border-bottom: 1px solid rgba(253, 251, 247, .08)
}

.footer .overline {
  font-size: 12px;
  letter-spacing: .22em;
  color: #96232e;
  margin-bottom: 20px
}

.footer .footer-title,
.profile-stats .stat-item h3 {
  letter-spacing: -.04em;
  font-family: "Cormorant Garamond"
}

.footer .footer-title {
  font-size: clamp(36px, 4vw, 42px);
  line-height: 1.02;
  color: #fdfbf7;
  margin-bottom: 24px
}

.footer .footer-location {
  color: rgba(253, 251, 247, .62);
  line-height: 1.8;
  margin: 0
}

.footer .footer-heading {
  font-size: 12px;
  letter-spacing: .22em;
  color: rgba(253, 251, 247, .52);
  margin-bottom: 24px
}

.footer .footer-contact ul,
.footer .footer-menu {
  list-style: none;
  padding: 0;
  margin: 0
}

.footer .footer-contact li {
  margin-bottom: 18px
}

.footer .footer-contact a,
.footer .footer-link,
.footer .footer-menu a {
  color: #fdfbf7;
  text-decoration: none;
  transition: .3s
}

.footer .footer-menu li {
  margin-bottom: 14px
}

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

.footer .footer-bottom {
  padding-top: 40px
}

.footer .disclaimer {
  margin-top: 40px;
  padding-top: 28px;
  border-top: 1px solid rgba(253, 251, 247, .08);
  color: rgba(253, 251, 247, .46);
  font-size: 13px;
  line-height: 1.8
}

.footer .footer-social-strip {
  display: flex;
  justify-content: center;
  gap: 18px
}

.footer .footer-social-strip a {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 1px solid rgba(253, 251, 247, .12);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .35s;
  background: rgba(255, 255, 255, .03)
}

.footer .footer-social-strip a:hover {
  transform: translateY(-3px);
  background: rgba(255, 255, 255, .08)
}

.footer .footer-social-strip svg {
  width: 18px;
  height: 18px;
  fill: #FDFBF7
}

@media (max-width:991px) {
  .footer {
    padding: 90px 0 40px
  }

  .footer .footer-main {
    padding-bottom: 50px
  }
}

.profile-hero {
  position: relative;
  padding: 180px 0 140px;
  background: #1e2a3f;
  color: #fdfbf7;
  overflow: hidden
}

.profile-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top center, rgba(255, 255, 255, .06), transparent 42%);
  pointer-events: none
}

.profile-hero .overline {
  margin-bottom: 26px;
  font-size: 12px;
  letter-spacing: .22em;
  color: #96232e
}

.profile-hero .profile-title {
  margin: 0 auto 32px;
  max-width: 1100px;
  font-family: "Cormorant Garamond";
  font-size: clamp(58px, 7vw, 52px);
  line-height: .92;
  letter-spacing: -.05em;
  color: #fdfbf7
}

.profile-hero .profile-text {
  font-size: 20px;
  line-height: 1.9;
  color: rgba(253, 251, 247, .76)
}

@media (max-width:991px) {
  .profile-hero {
    padding: 150px 0 110px
  }

  .profile-hero .profile-title {
    font-size: 72px
  }
}

.philosophy-section,
.profile-bio {
  position: relative;
  padding: 140px 0;
  background: #fdfbf7;
  color: #0a1128;
  overflow: hidden
}

.contact-section .contact-left,
.profile-bio .bio-image {
  position: sticky;
  top: 120px
}

.profile-bio .image-wrap {
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  background: #e9e4da
}

.profile-bio .image-wrap img {
  width: 100%;
  display: block;
  object-fit: cover
}

.profile-bio .image-badge {
  position: absolute;
  left: 32px;
  bottom: 32px;
  padding: 24px 26px;
  border-radius: 22px;
  background: rgba(10, 17, 40, .92);
  backdrop-filter: blur(12px);
  color: #fdfbf7;
  max-width: 220px
}

.profile-bio .badge-number {
  margin-bottom: 6px;
  font-family: "Cormorant Garamond";
  font-size: 48px;
  line-height: .9;
  color: #fdfbf7
}

.profile-bio .badge-text {
  margin: 0;
  font-size: 13px;
  line-height: 1.6;
  letter-spacing: .08em;
  color: rgba(253, 251, 247, .72)
}

.profile-bio .overline {
  margin-bottom: 20px;
  font-size: 14px;
  letter-spacing: .22em;
  font-weight: 600;
  color: #7c1b24
}

.profile-bio .bio-text {
  font-size: 18px;
  line-height: 2;
  color: #3b4252
}

.profile-bio .bio-text p {
  margin-bottom: 28px
}

.profile-bio .credentials-block {
  margin-top: 10px;
  padding-top: 10px
}

.profile-bio .credentials-list,
.sitemap-page .sitemap-list {
  margin: 0;
  padding: 0;
  list-style: none
}

.profile-bio .credentials-list li {
  position: relative;
  padding-left: 28px;
  margin-bottom: 22px;
  line-height: 1.8;
  color: #3b4252;
  border-top: 1px solid rgba(10, 17, 40, .08)
}

.profile-bio .credentials-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 12px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #7c1b24
}

@media (max-width:991px) {
  .profile-bio {
    padding: 100px 0
  }

  .profile-bio .bio-image {
    position: relative;
    top: auto
  }

  .profile-bio .credentials-block {
    margin-top: 60px
  }
}

.profile-stats {
  position: relative;
  padding: 60px 0;
  background: #1e2a3f;
  color: #fdfbf7;
  overflow: hidden
}

.profile-stats .stat-item {
  height: 100%;
  padding: 48px 36px;
  border-radius: 24px;
  background: linear-gradient(to bottom, rgba(255, 255, 255, .04), rgba(255, 255, 255, .015));
  border: 1px solid rgba(253, 251, 247, .08);
  transition: .35s;
  backdrop-filter: blur(10px)
}

.profile-stats .stat-item:hover {
  transform: translateY(-6px);
  border-color: rgba(253, 251, 247, .14);
  background: linear-gradient(to bottom, rgba(255, 255, 255, .06), rgba(255, 255, 255, .025))
}

.profile-stats .stat-item h3 {
  margin-bottom: 18px;
  font-size: clamp(54px, 5vw, 76px);
  line-height: .9;
  color: #fdfbf7
}

.profile-stats .stat-label {
  margin-bottom: 12px;
  font-size: 13px;
  letter-spacing: .18em;
  color: rgba(253, 251, 247, .58)
}

.profile-stats .stat-sub {
  margin: 0;
  font-size: 16px;
  line-height: 1.8;
  color: rgba(253, 251, 247, .74)
}

@media (max-width:991px) {

  .philosophy-section,
  .profile-stats {
    padding: 100px 0
  }

  .profile-stats .stat-item {
    padding: 40px 30px
  }

  .philosophy-section .philosophy-title {
    max-width: 100%
  }

  .philosophy-section .philosophy-features {
    margin-top: 50px
  }
}

.philosophy-section .overline {
  margin-bottom: 24px;
  font-size: 12px;
  letter-spacing: .22em;
  color: #7c1b24
}

.philosophy-section .philosophy-title {
  font-family: "Cormorant Garamond";
  font-size: clamp(48px, 5vw, 52px);
  color: #0a1128
}

.philosophy-section .philosophy-right>p {
  margin-bottom: 28px;
  font-size: 18px;
  line-height: 2;
  color: #3b4252
}

.philosophy-section .feature {
  height: 100%;
  padding: 34px 30px;
  border-radius: 24px;
  background: #fff;
  border: 1px solid rgba(10, 17, 40, .06);
  transition: .35s
}

.philosophy-section .feature:hover {
  transform: translateY(-6px);
  border-color: rgba(124, 27, 36, .16);
  box-shadow: 0 20px 50px rgba(10, 17, 40, .06)
}

.philosophy-section .icon {
  width: 64px;
  height: 64px;
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 22px;
  background: rgba(124, 27, 36, .08);
  color: #7c1b24;
  font-size: 26px
}

.profile-cta .btn-outline,
.profile-cta .btn-solid {
  align-items: center;
  transition: .35s;
  display: inline-flex;
  min-height: 58px;
  text-decoration: none
}

.philosophy-section .feature-title {
  margin-bottom: 14px;
  font-family: "Cormorant Garamond";
  font-size: 30px;
  line-height: 1.1;
  color: #0a1128
}

.philosophy-section .feature-text {
  margin: 0;
  font-size: 16px;
  line-height: 1.8;
  color: #4a4d59
}

.profile-cta {
  position: relative;
  padding: 60px 0;
  background: #0a1128;
  color: #fdfbf7;
  overflow: hidden
}

.profile-cta .cta-text {
  margin: 0 auto 42px;
  max-width: 980px;
  font-family: "Cormorant Garamond";
  font-size: clamp(40px, 5vw, 52px);
  line-height: 1.04;
  letter-spacing: -.04em;
  color: #fdfbf7
}

.profile-cta .btn-outline {
  justify-content: center;
  padding: 0 34px;
  border-radius: 999px;
  border: 1px solid rgba(253, 251, 247, .16);
  background: rgba(255, 255, 255, .03);
  color: #fdfbf7;
  backdrop-filter: blur(10px)
}

.profile-cta .btn-outline:hover {
  background: rgba(255, 255, 255, .08);
  transform: translateY(-2px);
  color: #fff
}

.profile-cta .btn-solid {
  justify-content: center;
  padding: 0 36px;
  border-radius: 999px;
  background: #7c1b24;
  color: #fdfbf7
}

.services-detail::after,
.services-detail::before {
  position: absolute;
  border-radius: 50%;
  content: "";
  pointer-events: none
}

.profile-cta .btn-solid:hover {
  background: #912330;
  transform: translateY(-2px);
  color: #fff
}

@media (max-width:991px) {
  .profile-cta {
    padding: 110px 0
  }

  .inner-hero {
    padding: 150px 0 100px
  }

  .inner-hero .inner-hero-title {
    font-size: 72px
  }
}

.inner-hero {
  background: #1e2a3f
}

.inner-hero::before {
  content: "";
  inset: 0;
  pointer-events: none;
  content: "";
  pointer-events: none
}

.inner-hero .overline,
.media-featured .media-caption {
  letter-spacing: .22em
}

.services-detail {
  position: relative;
  padding: 60px 0;
  background: linear-gradient(to bottom, #fdfbf7 0, #f7f3ec 100%);
  color: #0a1128;
  overflow: hidden
}

.services-detail::before {
  top: -200px;
  right: -200px;
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(124, 27, 36, .06), transparent 70%)
}

.services-detail::after {
  bottom: -180px;
  left: -180px;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(30, 42, 63, .05), transparent 72%)
}

.services-detail .service-row {
  position: relative;
  padding: 80px 0;
  border-bottom: 1px solid rgba(10, 17, 40, .08);
  transition: .45s
}

.services-detail .service-row::before {
  content: "";
  position: absolute;
  inset: 18px -30px;
  border-radius: 36px;
  background: linear-gradient(to bottom right, rgba(255, 255, 255, .92), rgba(255, 255, 255, .75));
  border: 1px solid rgba(10, 17, 40, .04);
  opacity: 0;
  transform: scale(.985);
  transition: .45s;
  z-index: -1;
  backdrop-filter: blur(12px);
  box-shadow: 0 30px 80px rgba(10, 17, 40, .04)
}

.books-detail .book-row:hover::before,
.media-articles .media-item:hover::before,
.services-detail .service-row:hover::before {
  opacity: 1;
  transform: scale(1)
}

.services-detail .service-index {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 28px;
  font-size: 11px;
  letter-spacing: .26em;
  color: #7c1b24
}

.books-detail .overline-dark::before,
.services-detail .service-index::before {
  content: "";
  width: 26px;
  height: 1px;
  background: rgba(124, 27, 36, .4)
}

.services-detail .service-left h2 {
  margin: 0;
  font-family: "Cormorant Garamond";
  font-size: clamp(44px, 4vw, 52px);
  letter-spacing: -.05em;
  color: #0a1128;
  transition: .35s
}

.author-image img,
.books-detail .book-image img {
  display: block;
  transition: transform .7s, filter .7s;
  width: 100%
}

.media-articles .media-item:hover,
.services-detail .service-row:hover .service-left h2 {
  transform: translateX(6px)
}

.services-detail .service-desc {
  margin-bottom: 40px;
  font-size: 19px;
  line-height: 2;
  color: #3b4252;
  max-width: 760px
}

.services-detail .service-features {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px 32px;
  margin: 0;
  padding: 0;
  list-style: none
}

.services-detail .service-features li {
  position: relative;
  padding-left: 34px;
  font-size: 15px;
  line-height: 1.9;
  color: #3b4252
}

.services-detail .service-features li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 12px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: radial-gradient(circle at 30% 30%, #c98b93, #7c1b24);
  box-shadow: 0 0 0 5px rgba(124, 27, 36, .08)
}

@media (max-width:991px) {
  .services-detail {
    padding: 110px 0
  }

  .services-detail .service-row {
    padding: 60px 0
  }

  .services-detail .service-row::before {
    inset: 12px -10px
  }

  .services-detail .service-features {
    grid-template-columns: 1fr
  }
}

.services-methodology {
  position: relative;
  padding: 150px 0;
  background: linear-gradient(to bottom, #1e2a3f 0, #162133 100%);
  color: #fdfbf7;
  overflow: hidden
}

.services-methodology::before {
  content: "";
  position: absolute;
  top: -220px;
  right: -220px;
  width: 620px;
  height: 620px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(124, 27, 36, .16), transparent 72%);
  pointer-events: none
}

.services-methodology::after {
  content: "";
  position: absolute;
  bottom: -180px;
  left: -180px;
  width: 520px;
  height: 520px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 255, 255, .04), transparent 72%);
  pointer-events: none
}

.services-methodology .overline {
  margin-bottom: 24px;
  font-size: 12px;
  letter-spacing: .22em;
  color: #96232e
}

.services-methodology .method-title {
  margin-bottom: 30px;
  font-family: "Cormorant Garamond";
  font-size: clamp(52px, 5vw, 52px);
  line-height: .92;
  letter-spacing: -.05em;
  color: #fdfbf7
}

.services-methodology .method-desc {
  max-width: 460px;
  font-size: 18px;
  line-height: 2;
  color: rgba(253, 251, 247, .74)
}

.services-methodology .method-right {
  border-top: 1px solid rgba(253, 251, 247, .08)
}

.services-methodology .method-item {
  position: relative;
  gap: 28px;
  padding: 38px 0;
  border-bottom: 1px solid rgba(253, 251, 247, .08);
  transition: .35s
}

.fees-section::after,
.fees-section::before {
  content: "";
  position: absolute;
  border-radius: 50%;
  pointer-events: none
}

.services-methodology .method-item:hover {
  transform: translateX(8px)
}

.services-methodology .method-number {
  min-width: 58px;
  padding-top: 8px;
  font-size: 11px;
  letter-spacing: .24em;
  color: #7c1b24
}

.media-articles .media-content,
.services-methodology .method-content {
  flex: 1
}

.services-methodology #method-text {
  margin-bottom: 14px;
  font-family: "Cormorant Garamond";
  font-size: 36px;
  line-height: 1.02;
  letter-spacing: -.03em;
  color: #fdfbf7;
  transition: .35s
}

.services-methodology #method-tex {
  margin: 0;
  max-width: 680px;
  font-size: 17px;
  line-height: 1.95;
  color: rgba(253, 251, 247, .68)
}

@media (max-width:991px) {
  .services-methodology {
    padding: 110px 0
  }

  .services-methodology .method-desc {
    max-width: 100%
  }

  .services-methodology .method-right {
    margin-top: 10px
  }
}

.fees-section {
  position: relative;
  padding: 140px 0;
  background: linear-gradient(to bottom, #fdfbf7 0, #f7f3ec 100%);
  overflow: hidden
}

.fees-section::before {
  top: -180px;
  right: -180px;
  width: 520px;
  height: 520px;
  background: radial-gradient(circle, rgba(124, 27, 36, .06), transparent 72%)
}

.fees-section::after {
  bottom: -200px;
  left: -200px;
  width: 580px;
  height: 580px;
  background: radial-gradient(circle, rgba(30, 42, 63, .05), transparent 72%)
}

.fees-section .fee-card {
  position: relative;
  height: 100%;
  padding: 60px 54px;
  border-radius: 34px;
  overflow: hidden;
  transition: .4s
}

.fees-section .fee-card.left {
  background: linear-gradient(135deg, #1e2a3f 0, #111b2e 100%);
  color: #fdfbf7;
  border: 1px solid rgba(253, 251, 247, .08);
  box-shadow: 0 30px 80px rgba(10, 17, 40, .14)
}

.fees-section .fee-card.right {
  background: linear-gradient(135deg, #7c1b24 0, #5e1119 100%);
  color: #fdfbf7;
  border: 1px solid rgba(253, 251, 247, .08);
  box-shadow: 0 30px 80px rgba(124, 27, 36, .18)
}

.fees-section .fee-card:hover,
.included-card:hover,
.media-featured .media-feature:hover,
.media-videos .video-item:hover {
  transform: translateY(-8px)
}

.fees-section .overline {
  margin-bottom: 24px;
  font-size: 12px;
  letter-spacing: .22em;
  color: rgba(253, 251, 247, .62)
}

.fees-section .fee-title {
  margin-bottom: 28px;
  font-family: "Cormorant Garamond";
  font-size: clamp(40px, 4vw, 52px);
  line-height: .96;
  letter-spacing: -.04em;
  color: #fdfbf7
}

.fees-section .fee-text {
  margin-bottom: 40px;
  font-size: 18px;
  line-height: 1.95;
  color: rgba(253, 251, 247, .76);
  max-width: 540px
}

.fees-section .btn-primary,
.fees-section .btn-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 58px;
  padding: 0 34px;
  border-radius: 999px;
  text-decoration: none;
  transition: .35s;
  font-size: 15px
}

.fees-section .btn-primary {
  background: #fdfbf7;
  color: #7c1b24
}

.fees-section .btn-primary:hover {
  background: #fff;
  transform: translateY(-2px);
  color: #7c1b24
}

.fees-section .btn-secondary {
  border: 1px solid rgba(253, 251, 247, .16);
  background: rgba(255, 255, 255, .05);
  color: #fdfbf7;
  backdrop-filter: blur(10px)
}

.fees-section .btn-secondary:hover {
  background: rgba(255, 255, 255, .12);
  color: #fff;
  transform: translateY(-2px)
}

@media (max-width:991px) {
  .fees-section {
    padding: 100px 0
  }

  .fees-section .fee-card {
    padding: 48px 40px
  }
}

.books-detail::after,
.books-detail::before {
  border-radius: 50%;
  filter: blur(10px);
  content: "";
  position: absolute;
  pointer-events: none
}

.books-detail,
.media-featured {
  position: relative;
  padding: 60px 0;
  background: linear-gradient(to bottom, #fdfbf7 0, #f5f0e8 100%);
  overflow: hidden
}

.books-detail::before {
  top: -280px;
  right: -240px;
  width: 720px;
  height: 720px;
  background: radial-gradient(circle, rgba(124, 27, 36, .07), transparent 72%)
}

.books-detail::after {
  bottom: -260px;
  left: -240px;
  width: 680px;
  height: 680px;
  background: radial-gradient(circle, rgba(30, 42, 63, .06), transparent 72%)
}

.books-detail .book-row {
  position: relative;
  padding: 50px 0;
  align-items: center
}

.books-detail .book-row:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: linear-gradient(to right, transparent, rgba(10, 17, 40, .08), transparent)
}

.books-detail .book-row::before {
  content: "";
  position: absolute;
  inset: 20px -35px;
  border-radius: 40px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .82), rgba(255, 255, 255, .55));
  border: 1px solid rgba(10, 17, 40, .04);
  opacity: 0;
  transform: scale(.985);
  transition: .45s;
  z-index: -1;
  backdrop-filter: blur(14px);
  box-shadow: 0 30px 90px rgba(10, 17, 40, .06)
}

.books-detail .book-image {
  position: relative;
  overflow: hidden;
  border-radius: 30px;
  background: #e9e4da;
  box-shadow: 0 30px 80px rgba(10, 17, 40, .12);
  transition: .45s
}

.books-detail .book-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255, 255, 255, .12), transparent 45%);
  pointer-events: none
}

.books-detail .book-image img {
  object-fit: cover;
  max-width: 450px;
  height: auto;
  object-fit: contain
}

.author-grid:hover .author-image,
.books-detail .book-row:hover .book-image,
.media-reel .media-reel-video:hover {
  transform: translateY(-6px)
}

.author-grid:hover .author-image img,
.books-detail .book-row:hover .book-image img {
  transform: scale(1.04);
  filter: contrast(1.03)
}

.books-detail .book-content {
  position: relative;
  max-width: 560px
}

.books-detail .overline-dark {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 26px;
  font-size: 11px;
  letter-spacing: .26em;
  color: #7c1b24
}

.books-detail .book-content h2 {
  margin-bottom: 24px;
  font-family: "Cormorant Garamond";
  font-size: clamp(52px, 5vw, 86px);
  line-height: .9;
  letter-spacing: -.055em;
  color: #0a1128;
  transition: .35s
}

.books-detail .book-row:hover h2 {
  transform: translateX(4px)
}

.books-detail .book-tag {
  margin-bottom: 28px;
  font-size: 13px;
  letter-spacing: .2em;
  color: rgba(10, 17, 40, .48)
}

.books-detail .book-desc {
  margin-bottom: 42px;
  font-size: 18px;
  line-height: 2;
  color: #3b4252;
  max-width: 100%
}

.books-detail .btn-ghost {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 58px;
  padding: 0 34px;
  border-radius: 999px;
  overflow: hidden;
  border: 1px solid rgba(10, 17, 40, .08);
  background: linear-gradient(135deg, rgba(255, 255, 255, .92), rgba(255, 255, 255, .65));
  color: #0a1128;
  text-decoration: none;
  transition: .4s;
  backdrop-filter: blur(12px);
  box-shadow: 0 10px 25px rgba(10, 17, 40, .04)
}

.archive-strip::after,
.archive-strip::before,
.media-featured::before,
.peer-review::after,
.peer-review::before {
  content: "";
  position: absolute;
  border-radius: 50%;
  pointer-events: none
}

.books-detail .btn-ghost:hover {
  background: #7c1b24;
  border-color: #7c1b24;
  color: #fdfbf7;
  transform: translateY(-3px);
  box-shadow: 0 18px 40px rgba(124, 27, 36, .18)
}

.books-detail .book-row {
  min-height: 620px
}

.books-detail .book-image {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center
}

@media (max-width:991px) {
  .books-detail {
    padding: 110px 0
  }

  .books-detail .book-row {
    padding: 30px 0
  }

  .books-detail .book-row::before {
    inset: 10px -10px
  }

  .books-detail .book-row.reverse .book-content,
  .books-detail .book-row:not(.reverse) .book-content {
    padding: 0
  }
}

.archive-strip,
.media-videos {
  position: relative;
  padding: 60px 0;
  background: linear-gradient(180deg, #1e2a3f 0, #162133 100%);
  color: #fdfbf7;
  overflow: hidden
}

.archive-strip::before {
  top: -220px;
  right: -220px;
  width: 620px;
  height: 620px;
  background: radial-gradient(circle, rgba(124, 27, 36, .14), transparent 72%)
}

.archive-strip::after {
  bottom: -200px;
  left: -200px;
  width: 560px;
  height: 560px;
  background: radial-gradient(circle, rgba(255, 255, 255, .04), transparent 72%)
}

.archive-strip .archive-label {
  margin-bottom: 24px;
  font-size: 12px;
  letter-spacing: .24em;
  color: #96232e
}

.archive-strip .archive-title {
  margin: 0 auto 30px;
  max-width: 980px;
  font-family: "Cormorant Garamond";
  font-size: clamp(42px, 5vw, 52px);
  line-height: .95;
  letter-spacing: -.05em;
  color: #fdfbf7
}

.archive-strip .archive-text {
  max-width: 760px;
  margin: 0 auto;
  font-size: 18px;
  line-height: 1.95;
  color: rgba(253, 251, 247, .74)
}

@media (max-width:991px) {
  .archive-strip {
    padding: 100px 0
  }

  .archive-strip .archive-title {
    font-size: 64px
  }
}

@media (max-width:767px) {
  .homepage-hero {
    min-height: auto
  }

  .homepage-hero .hero-main {
    padding-top: 50px
  }

  .homepage-hero .hero-title,
  .philosophy-section .philosophy-title,
  .services-methodology .method-title {
    font-size: 52px
  }

  .homepage-hero .hero-degree {
    font-size: 18px
  }

  .about-section .about-text,
  .cta-section .cta-text,
  .homepage-hero .hero-text,
  .indigent-section .indigent-text,
  .inner-hero .inner-hero-text,
  .profile-hero .profile-text {
    font-size: 17px
  }

  .homepage-hero .hero-stats {
    margin-top: 80px
  }

  .homepage-hero .stat,
  .services-section .service-card {
    padding: 32px
  }

  .about-section,
  .archive-strip,
  .books-section,
  .fees-section,
  .home-videos,
  .indigent-section,
  .insights-section,
  .methodology-section,
  .philosophy-section,
  .profile-bio,
  .profile-stats,
  .services-detail,
  .services-section {
    padding: 80px 0
  }

  .about-section .about-title,
  .books-section .books-title,
  .home-videos .videos-title,
  .indigent-section .indigent-title,
  .insights-section .insights-title,
  .services-section .services-title {
    font-size: 46px
  }

  .about-section .dropcap:first-letter {
    font-size: 62px
  }

  .books-section .book h3,
  .services-methodology #method-text,
  .services-section .service-card h3 {
    font-size: 30px
  }

  .fees-section .fee-title,
  .footer .footer-title,
  .methodology-section .method-title,
  .methodology-section .vowel-letter {
    font-size: 42px
  }

  .methodology-section .vowel-title {
    font-size: 34px
  }

  .methodology-section .method-item {
    flex-direction: column;
    gap: 12px
  }

  .methodology-section .vowel-item {
    grid-template-columns: 50px 1fr
  }

  .books-section .books-sub {
    font-size: 16px
  }

  .books-section .book-image {
    height: 320px
  }

  .books-section .book-content {
    padding: 24px
  }

  .insights-section .insight-item {
    grid-template-columns: 1fr;
    gap: 12px
  }

  .insights-section .insight-item h3 {
    font-size: 28px
  }

  .insights-section .video-content h3 {
    font-size: 32px
  }

  .insights-section .play-btn {
    width: 70px;
    height: 70px
  }

  .home-videos .video-title,
  .philosophy-section .feature-title {
    font-size: 26px
  }

  .home-videos .video-content {
    padding: 22px
  }

  .cta-section,
  .profile-cta,
  .testimonial-section {
    padding: 90px 0
  }

  .testimonial-section .quote-icon {
    font-size: 58px
  }

  .testimonial-section .testimonial-quote {
    font-size: 34px;
    line-height: 1.18
  }

  .testimonial-section .testimonial-footer {
    gap: 18px !important
  }

  .testimonial-section .line {
    width: 50px
  }

  .cta-section .cta-title {
    font-size: 48px
  }

  .books-detail .btn-ghost,
  .cta-section .btn-primary,
  .cta-section .btn-secondary,
  .fees-section .btn-primary,
  .fees-section .btn-secondary,
  .profile-cta .btn-outline,
  .profile-cta .btn-solid {
    width: 100%
  }

  .footer {
    padding: 70px 0 30px
  }

  .footer .footer-bottom {
    text-align: center
  }

  .footer .footer-social-strip {
    justify-content: center
  }

  .profile-hero {
    padding: 120px 0 90px
  }

  .profile-hero .profile-title {
    font-size: 52px;
    line-height: 1
  }

  .profile-bio .image-badge {
    left: 20px;
    bottom: 20px;
    padding: 18px 20px
  }

  .profile-bio .badge-number {
    font-size: 38px
  }

  .books-detail .book-desc,
  .fees-section .fee-text,
  .philosophy-section .philosophy-right>p,
  .profile-bio .bio-text,
  .services-detail .service-desc {
    font-size: 17px;
    line-height: 1.9
  }

  .profile-stats .stat-item {
    padding: 34px 26px
  }

  .profile-stats .stat-item h3 {
    font-size: 54px
  }

  .philosophy-section .feature {
    padding: 28px 24px
  }

  .profile-cta .cta-text {
    font-size: 42px;
    line-height: 1.08
  }

  .inner-hero {
    padding: 120px 0 80px
  }

  .inner-hero .inner-hero-title {
    font-size: 50px;
    line-height: 1
  }

  .archive-strip .archive-title,
  .services-detail .service-left h2 {
    font-size: 46px;
    line-height: 1
  }

  .services-detail .service-row {
    padding: 45px 0
  }

  .books-detail .book-row::before,
  .services-detail .service-row::before {
    display: none
  }

  .books-detail,
  .services-methodology {
    padding: 85px 0
  }

  .services-methodology .method-item {
    gap: 18px;
    padding: 28px 0
  }

  .services-methodology #method-tex {
    font-size: 16px;
    line-height: 1.85
  }

  .fees-section .fee-card {
    padding: 36px 28px;
    border-radius: 26px
  }

  .books-detail .book-row {
    padding: 50px 0
  }

  .books-detail .book-content h2 {
    font-size: 52px;
    line-height: .98
  }

  .archive-strip .archive-text {
    font-size: 17px;
    line-height: 1.85
  }
}

.peer-review {
  position: relative;
  padding: 80px 0;
  background: linear-gradient(to bottom, #fdfbf7 0, #f5f0e8 100%);
  overflow: hidden
}

.media-featured::before,
.peer-review::before {
  top: -240px;
  right: -240px;
  width: 640px;
  height: 640px;
  background: radial-gradient(circle, rgba(124, 27, 36, .06), transparent 72%)
}

.peer-review::after {
  bottom: -220px;
  left: -220px;
  width: 580px;
  height: 580px;
  background: radial-gradient(circle, rgba(30, 42, 63, .05), transparent 72%)
}

.author-bio .overline,
.peer-review .peer-label {
  margin-bottom: 28px;
  font-size: 12px;
  letter-spacing: .24em;
  color: #7c1b24
}

.peer-review .peer-quote {
  position: relative;
  margin: 0 auto;
  max-width: 1100px;
  font-family: "Cormorant Garamond";
  font-size: clamp(42px, 5vw, 35px);
  line-height: 1.5;
  letter-spacing: -.045em;
  color: #0a1128
}

.peer-review .peer-quote::before {
  content: "“";
  position: absolute;
  left: -70px;
  top: -40px;
  font-size: 180px;
  line-height: 1;
  color: rgba(124, 27, 36, .08);
  font-family: serif;
  pointer-events: none
}

@media (max-width:991px) {
  .peer-review {
    padding: 110px 0
  }

  .peer-review .peer-quote {
    font-size: 56px
  }

  .peer-review .peer-quote::before {
    left: -20px;
    top: -20px;
    font-size: 120px
  }

  .inner-hero {
    padding: 150px 0 100px
  }

  .inner-hero .inner-hero-title {
    font-size: 74px
  }
}

.media-featured .media-feature {
  box-shadow: 0 25px 80px rgba(10, 17, 40, .06);
  backdrop-filter: blur(14px)
}

.media-featured .media-image-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255, 255, 255, .1), transparent 40%);
  pointer-events: none
}

.media-featured .media-image-wrap img {
  display: block;
  object-fit: cover
}

.media-featured .media-feature:hover img {
  transform: scale(1.03);
  filter: contrast(1.03)
}

@media (max-width:991px) {
  .media-featured {
    padding: 100px 0
  }
}

.media-articles {
  position: relative;
  padding: 140px 0;
  background: linear-gradient(to bottom, #fdfbf7 0, #f6f1e9 100%);
  overflow: hidden
}

.media-articles::before {
  content: "";
  position: absolute;
  top: -220px;
  right: -220px;
  width: 620px;
  height: 620px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(124, 27, 36, .05), transparent 72%);
  pointer-events: none
}

.media-articles .media-list {
  position: relative;
  z-index: 2;
  border-top: 1px solid rgba(10, 17, 40, .08)
}

.media-articles .media-item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  padding: 42px 10px;
  text-decoration: none;
  border-bottom: 1px solid rgba(10, 17, 40, .08);
  transition: .4s
}

.media-articles .media-item::before {
  content: "";
  position: absolute;
  inset: 10px -24px;
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .82), rgba(255, 255, 255, .58));
  border: 1px solid rgba(10, 17, 40, .04);
  opacity: 0;
  transform: scale(.985);
  transition: .4s;
  z-index: -1;
  backdrop-filter: blur(12px);
  box-shadow: 0 25px 70px rgba(10, 17, 40, .05)
}

.media-articles .media-meta {
  min-width: 120px
}

.media-articles .media-meta span {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 11px;
  letter-spacing: .24em;
  color: #7c1b24
}

.media-articles .media-meta span::before {
  content: "";
  width: 24px;
  height: 1px;
  background: rgba(124, 27, 36, .4)
}

.media-articles .media-content h3 {
  margin-bottom: 12px;
  font-family: "Cormorant Garamond";
  font-size: clamp(34px, 3vw, 52px);
  line-height: .98;
  letter-spacing: -.04em;
  color: #0a1128;
  transition: .35s
}

.media-articles .media-item:hover h3,
.scenario-footer span {
  color: #7c1b24
}

.media-articles .media-content p {
  margin: 0;
  font-size: 14px;
  letter-spacing: .14em;
  color: rgba(10, 17, 40, .5)
}

.media-articles .media-arrow {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(10, 17, 40, .08);
  background: rgba(255, 255, 255, .7);
  color: #0a1128;
  font-size: 18px;
  transition: .35s
}

.media-videos::after,
.media-videos::before {
  border-radius: 50%;
  content: "";
  position: absolute;
  pointer-events: none
}

.media-articles .media-item:hover .media-arrow {
  background: #7c1b24;
  border-color: #7c1b24;
  color: #fdfbf7;
  transform: rotate(45deg)
}

@media (max-width:991px) {
  .media-articles {
    padding: 100px 0
  }

  .media-articles .media-item {
    gap: 28px
  }

  .media-videos {
    padding: 110px 0
  }

  .media-videos .video-content h3 {
    font-size: 28px
  }
}

.media-videos::before {
  top: -240px;
  right: -220px;
  width: 680px;
  height: 680px;
  background: radial-gradient(circle, rgba(124, 27, 36, .18), transparent 72%)
}

.media-videos::after {
  bottom: -220px;
  left: -220px;
  width: 620px;
  height: 620px;
  background: radial-gradient(circle, rgba(255, 255, 255, .04), transparent 72%)
}

.inner-hero.hero-left::before,
.inner-hero::before {
  top: -260px;
  right: -220px;
  width: 720px;
  height: 720px;
  filter: blur(10px)
}

.media-videos .media-videos-title {
  margin: 18px auto 0;
  max-width: 920px;
  font-family: "Cormorant Garamond";
  font-size: clamp(44px, 5vw, 52px);
  line-height: .95;
  letter-spacing: -.05em;
  color: #fdfbf7
}

.inner-hero .overline,
.media-reel .overline,
.media-videos .overline {
  letter-spacing: .24em;
  text-transform: uppercase
}

.media-videos .video-item {
  position: relative;
  overflow: hidden;
  border-radius: 30px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .02));
  border: 1px solid rgba(255, 255, 255, .08);
  backdrop-filter: blur(12px);
  transition: .45s;
  box-shadow: 0 30px 80px rgba(0, 0, 0, .18)
}

.author-image,
.media-reel .media-reel-video {
  border-radius: 34px;
  position: relative;
  transition: .45s;
  overflow: hidden
}

.media-reel-video,
.media-videos .video-frame {
  overflow: hidden;
  background: #000
}

.media-reel .media-reel-video iframe,
.media-reel-video iframe,
.media-videos .video-frame iframe {
  width: 100%;
  height: 100%
}

.media-videos .video-content h3 {
  margin: 0;
  font-family: "Cormorant Garamond";
  font-size: 28px;
  line-height: 1.02;
  letter-spacing: -.03em;
  color: #fdfbf7
}

.media-videos .overline {
  font-size: 12px;
  color: #96232e
}

.media-reel .media-reel-inner h2 {
  margin-bottom: 50px;
  font-family: "Cormorant Garamond";
  font-size: clamp(52px, 5vw, 52px);
  line-height: .92;
  letter-spacing: -.05em;
  color: #0a1128
}

.media-reel .media-reel-video {
  background: #000;
  box-shadow: 0 35px 90px rgba(10, 17, 40, .14)
}

.media-reel .media-reel-video::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255, 255, 255, .08), transparent 42%);
  pointer-events: none
}

@media (max-width:991px) {
  .media-reel {
    padding: 110px 0
  }

  .media-reel .media-reel-inner h2 {
    font-size: 68px
  }
}

.author-bio .author-text h2,
.author-content h2 {
  font-size: clamp(48px, 5vw, 52px);
  letter-spacing: -.05em;
  color: #0a1128
}

.author-bio .author-text h2,
.counter-title {
  font-family: "Cormorant Garamond";
  line-height: .95
}

.author-bio::after,
.author-bio::before,
.contact-section::before,
.inner-hero::after,
.inner-hero::before {
  border-radius: 50%;
  pointer-events: none;
  content: ""
}

.inner-hero,
.inner-hero.hero-left {
  position: relative;
  padding: 190px 0 130px;
  background: linear-gradient(180deg, #1e2a3f 0, #162133 100%);
  color: #fdfbf7;
  overflow: hidden
}

.author-bio,
.author-foreword,
.author-recognition {
  background: linear-gradient(to bottom, #fdfbf7 0, #f4efe7 100%)
}

.inner-hero .overline,
.inner-hero.hero-left .overline {
  margin-bottom: 28px;
  color: #96232e
}

.inner-hero::before {
  position: absolute;
  background: radial-gradient(circle, rgba(124, 27, 36, .18), transparent 72%)
}

.inner-hero::after {
  position: absolute;
  bottom: -240px;
  left: -220px;
  width: 620px;
  height: 620px;
  background: radial-gradient(circle, rgba(255, 255, 255, .05), transparent 72%);
  filter: blur(10px)
}

.inner-hero .overline {
  font-size: 12px
}

.inner-hero .inner-hero-title {
  margin: 0 auto 20px;
  max-width: 1100px;
  font-family: "Cormorant Garamond";
  font-size: clamp(62px, 7vw, 52px);
  color: #fdfbf7
}

.inner-hero .inner-hero-text {
  font-size: 19px;
  line-height: 1.95;
  color: rgba(253, 251, 247, .74)
}

@media (max-width:991px) {
  .inner-hero {
    padding: 150px 0 100px
  }

  .inner-hero .inner-hero-title {
    font-size: 76px
  }
}

.author-content .overline,
.inner-hero.hero-left .overline {
  font-size: 12px;
  letter-spacing: .24em;
  text-transform: uppercase
}

.author-bio {
  position: relative;
  padding: 60px 0;
  overflow: hidden
}

.author-bio::before,
.contact-section::before {
  position: absolute;
  top: -240px;
  right: -220px;
  width: 680px;
  height: 680px;
  background: radial-gradient(circle, rgba(124, 27, 36, .06), transparent 72%)
}

.author-bio::after {
  position: absolute;
  bottom: -240px;
  left: -220px;
  width: 620px;
  height: 620px;
  background: radial-gradient(circle, rgba(30, 42, 63, .05), transparent 72%)
}

.author-bio .author-text h2 {
  margin: 0 auto 34px;
  max-width: 1000px
}

.author-bio .author-text p:last-child {
  max-width: 820px;
  margin: 0 auto;
  font-size: 19px;
  line-height: 2;
  color: #3b4252
}

@media (max-width:991px) {
  .author-bio {
    padding: 110px 0
  }

  .author-bio .author-text h2 {
    font-size: 62px
  }
}

.author-foreword,
.author-recognition,
.author-unpublished {
  position: relative;
  padding: 150px 0;
  overflow: hidden
}

.author-unpublished {
  background: linear-gradient(180deg, #1e2a3f 0, #162133 100%);
  color: #fdfbf7
}

.author-foreword::before,
.author-recognition::before,
.author-unpublished::before {
  content: "";
  position: absolute;
  top: -240px;
  right: -240px;
  width: 680px;
  height: 680px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(124, 27, 36, .08), transparent 72%);
  pointer-events: none
}

.author-grid {
  z-index: 2;
  position: relative
}

.author-image {
  background: #eae5dc;
  box-shadow: 0 30px 90px rgba(10, 17, 40, .1)
}

.author-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255, 255, 255, .1), transparent 42%);
  pointer-events: none
}

.author-image img {
  object-fit: cover
}

.author-content .overline {
  margin-bottom: 26px;
  color: #7c1b24
}

.author-unpublished .overline {
  color: rgba(253, 251, 247, .58)
}

.author-content h2 {
  margin-bottom: 30px;
  font-family: "Cormorant Garamond";
  line-height: .92
}

.author-unpublished .author-content h2,
.footer-security-content a:hover {
  color: #fdfbf7
}

.author-content p:last-child {
  max-width: 720px;
  font-size: 19px;
  line-height: 2;
  color: #3b4252
}

.author-unpublished .author-content p:last-child {
  color: rgba(253, 251, 247, .74)
}

.author-grid::before {
  content: "";
  position: absolute;
  inset: -24px;
  border-radius: 42px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .65), rgba(255, 255, 255, .3));
  border: 1px solid rgba(10, 17, 40, .04);
  opacity: 0;
  transition: .45s;
  z-index: -1;
  backdrop-filter: blur(14px);
  box-shadow: 0 30px 80px rgba(10, 17, 40, .05)
}

.author-unpublished .author-grid::before {
  background: linear-gradient(135deg, rgba(255, 255, 255, .04), rgba(255, 255, 255, .01));
  border: 1px solid rgba(255, 255, 255, .06)
}

.author-grid:hover::before,
.media-video-card:hover::before {
  opacity: 1
}

@media (max-width:991px) {

  .author-foreword,
  .author-recognition,
  .author-unpublished {
    padding: 110px 0
  }

  .author-content h2 {
    font-size: 62px
  }
}

.inner-hero.hero-left::before {
  content: "";
  position: absolute;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(124, 27, 36, .18), transparent 72%);
  pointer-events: none
}

.contact-section::after,
.inner-hero.hero-left::after {
  left: -220px;
  width: 620px;
  height: 620px;
  border-radius: 50%;
  content: "";
  position: absolute;
  pointer-events: none
}

.inner-hero.hero-left::after {
  bottom: -240px;
  background: radial-gradient(circle, rgba(255, 255, 255, .05), transparent 72%);
  filter: blur(10px)
}

.inner-hero.hero-left .hero-title-md {
  margin-bottom: 34px;
  max-width: 950px;
  font-family: "Cormorant Garamond";
  font-size: clamp(58px, 7vw, 52px);
  line-height: .9;
  letter-spacing: -.055em;
  color: #fdfbf7
}

.inner-hero.hero-left .hero-text-md {
  max-width: 720px;
  font-size: 19px;
  line-height: 1.95;
  color: rgba(253, 251, 247, .74)
}

@media (max-width:991px) {
  .inner-hero.hero-left {
    padding: 150px 0 100px
  }

  .inner-hero.hero-left .hero-title-md {
    font-size: 74px
  }
}

.contact-section {
  position: relative;
  padding: 150px 0;
  background: linear-gradient(to bottom, #fdfbf7 0, #f5f0e8 100%);
  overflow: hidden
}

.contact-section::after {
  bottom: -220px;
  background: radial-gradient(circle, rgba(30, 42, 63, .05), transparent 72%)
}

.contact-section .overline {
  margin-bottom: 24px;
  font-size: 18px;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: #7c1b24
}

.contact-section .contact-list {
  margin-bottom: 50px;
  border-top: 1px solid rgba(10, 17, 40, .08)
}

.contact-section .contact-row {
  padding: 22px 0;
  border-bottom: 1px solid rgba(10, 17, 40, .08)
}

.contact-section .contact-row .label {
  margin-bottom: 10px;
  font-size: 11px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(10, 17, 40, .48)
}

.contact-section .contact-row a,
.contact-section .contact-row p:last-child {
  margin: 0;
  font-family: "Cormorant Garamond";
  font-size: 30px;
  line-height: 1.1;
  color: #0a1128;
  text-decoration: none
}

.contact-section .contact-box {
  padding: 36px;
  border-radius: 30px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .82), rgba(255, 255, 255, .58));
  border: 1px solid rgba(10, 17, 40, .05);
  backdrop-filter: blur(12px);
  box-shadow: 0 25px 70px rgba(10, 17, 40, .05)
}

.contact-section .contact-notes {
  margin: 0;
  padding-left: 20px
}

.contact-section .contact-notes li {
  margin-bottom: 14px;
  font-size: 16px;
  line-height: 1.85;
  color: #3b4252
}

.contact-section .contact-form {
  padding: 32px;
  border-radius: 36px;
  background: linear-gradient(135deg, #1e2a3f 0, #162133 100%);
  color: #fdfbf7;
  box-shadow: 0 30px 90px rgba(10, 17, 40, .14);
  overflow: hidden;
  position: relative
}

.contact-section .contact-form::before {
  content: "";
  position: absolute;
  top: -180px;
  right: -180px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(124, 27, 36, .22), transparent 72%);
  pointer-events: none
}

.contact-section .wpcf7-form p {
  margin-bottom: 0
}

.wpcf7 input,
.wpcf7 input:not(.wpcf7-submit),
.wpcf7 select,
.wpcf7 textarea {
  width: 100%;
  margin-bottom: 20px
}

.contact-section input,
.contact-section select,
.contact-section textarea {
  width: 100%;
  min-height: 58px;
  padding: 16px 20px;
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, .08);
  background: rgba(255, 255, 255, .05);
  color: #fdfbf7;
  outline: 0;
  transition: .3s;
  margin-bottom: 10px
}

.contact-section textarea,
.questionnaire-form textarea,
.questionnaire-wrapper textarea {
  min-height: 180px;
  resize: vertical
}

.contact-section input:focus,
.contact-section select:focus,
.contact-section textarea:focus {
  border-color: rgba(255, 255, 255, .22);
  background: rgba(255, 255, 255, .08)
}

.contact-section input::placeholder,
.contact-section textarea::placeholder {
  color: rgba(253, 251, 247, .46)
}

.contact-section input[type=submit] {
  width: auto;
  min-width: 220px;
  border: none;
  background: #7c1b24;
  color: #fdfbf7;
  cursor: pointer;
  font-size: 15px;
  letter-spacing: .04em;
  transition: .35s
}

.contact-section input[type=submit]:hover {
  background: #912330;
  transform: translateY(-2px)
}

.wpcf7-form select {
  width: 100%;
  padding: 14px 18px;
  border: 1px solid #2b3a52;
  border-radius: 18px;
  background: linear-gradient(135deg, #1e2a3f 0, #162133 100%);
  color: #fdfbf7;
  font-size: 16px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23FDFBF7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='2 4 6 8 10 4'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  background-size: 12px;
  cursor: pointer;
  margin-bottom: 20px
}

.wpcf7-form select option {
  background: #162133;
  color: #fdfbf7
}

@media (max-width:991px) {
  .contact-section {
    padding: 110px 0
  }

  .contact-section .contact-left {
    position: relative;
    top: auto
  }

  .contact-section .contact-form {
    padding: 42px
  }
}

@media (max-width:767px) {

  .author-bio,
  .author-foreword,
  .author-recognition,
  .author-unpublished,
  .contact-section,
  .media-reel,
  .media-videos,
  .peer-review {
    padding: 85px 0
  }

  .peer-review .peer-quote {
    font-size: 38px;
    line-height: 1.12
  }

  .media-articles .media-item::before,
  .peer-review .peer-quote::before {
    display: none
  }

  .media-articles,
  .media-featured {
    padding: 80px 0
  }

  .media-featured .media-feature {
    padding: 18px;
    border-radius: 26px
  }

  .media-articles .media-item {
    flex-direction: column;
    align-items: flex-start;
    padding: 34px 0
  }

  .media-articles .media-content h3 {
    font-size: 36px;
    line-height: 1.04
  }

  .media-articles .media-arrow {
    width: 52px;
    height: 52px
  }

  .media-videos .media-videos-title {
    font-size: 50px;
    line-height: 1
  }

  .media-videos .video-content {
    padding: 22px
  }

  .contact-section .contact-row a,
  .contact-section .contact-row p:last-child,
  .media-videos .video-content h3 {
    font-size: 24px
  }

  .media-reel .media-reel-inner h2 {
    font-size: 48px;
    line-height: 1
  }

  .media-reel .media-reel-video {
    border-radius: 22px
  }

  .inner-hero,
  .inner-hero.hero-left {
    padding: 120px 0 80px
  }

  .inner-hero .inner-hero-title,
  .inner-hero.hero-left .hero-title-md {
    font-size: 52px;
    line-height: 1
  }

  .inner-hero .inner-hero-text,
  .inner-hero.hero-left .hero-text-md {
    font-size: 17px;
    line-height: 1.85
  }

  .author-bio .author-text h2 {
    font-size: 44px;
    line-height: 1
  }

  .author-bio .author-text p:last-child,
  .author-content p:last-child {
    font-size: 17px;
    line-height: 1.9
  }

  .author-content h2 {
    font-size: 46px;
    line-height: 1
  }

  .author-image {
    border-radius: 24px
  }

  .contact-section .contact-form {
    padding: 30px 24px;
    border-radius: 24px
  }

  .contact-section .contact-box {
    padding: 26px
  }

  .contact-section input[type=submit] {
    width: 100%
  }
}

.site-header .nav-right {
  margin-left: auto
}

.site-header .header-keywords {
  position: relative;
  gap: 18px;
  padding-right: 6px
}

.site-header .header-keywords span {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #fdfbf7;
  opacity: .82;
  transition: .3s
}

.site-header .header-keywords span:hover {
  opacity: 1;
  color: #fff
}

.site-header .header-keywords .divider {
  width: 1px;
  height: 14px;
  background: rgba(255, 255, 255, .22);
  pointer-events: none
}

@media (max-width:1199px) {
  .navbar-collapse {
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid rgba(255, 255, 255, .08)
  }

  .navbar-nav {
    gap: 18px
  }

  .nav-cta {
    margin-left: 0;
    margin-top: 30px
  }

  .site-header .nav-right {
    width: 100%;
    margin-top: 24px
  }
}

.media-featured .media-image-wrap {
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  background: #eae5dc;
  aspect-ratio: 0.78;
  display: flex;
  align-items: center;
  justify-content: center
}

.media-featured .media-image-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .7s, filter .7s
}

.media-featured .media-feature {
  height: 100%;
  position: relative;
  padding: 18px;
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .88), rgba(255, 255, 255, .62));
  border: 1px solid rgba(10, 17, 40, .05);
  box-shadow: 0 20px 60px rgba(10, 17, 40, .06);
  transition: .45s;
  backdrop-filter: blur(12px)
}

.counter-digit::before,
.media-reel::after,
.media-reel::before,
.media-video-card::before,
.visitor-counter::before {
  content: "";
  position: absolute
}

.media-featured .media-caption {
  margin: 18px 4px 0;
  font-size: 11px;
  letter-spacing: .18em;
  text-transform: uppercase;
  line-height: 1.6;
  color: #7c1b24
}

.visitor-counter {
  position: relative;
  padding: 140px 0;
  background: linear-gradient(180deg, #fdfbf7 0, #f5f0e8 100%);
  overflow: hidden
}

.visitor-counter::before {
  top: -240px;
  right: -240px;
  width: 700px;
  height: 700px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(124, 27, 36, .08), transparent 70%);
  pointer-events: none
}

.visitor-counter-card {
  position: relative;
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
  padding: 70px 50px;
  border-radius: 36px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .9), rgba(255, 255, 255, .7));
  backdrop-filter: blur(18px);
  border: 1px solid rgba(10, 17, 40, .06);
  box-shadow: 0 30px 90px rgba(10, 17, 40, .08)
}

.counter-overline {
  margin-bottom: 18px;
  font-size: 12px;
  letter-spacing: .28em;
  text-transform: uppercase;
  color: #7c1b24
}

.counter-title {
  margin-bottom: 16px;
  font-size: clamp(48px, 5vw, 82px);
  color: #0a1128
}

.counter-subtitle {
  max-width: 650px;
  margin: 0 auto 45px;
  color: #3b4252;
  font-size: 18px;
  line-height: 1.8
}

.counter-display {
  display: flex;
  justify-content: center;
  margin-bottom: 35px
}

.counter-digit {
  display: inline-block;
  padding: 22px 36px;
  border-radius: 20px;
  background: #0a1128;
  color: #fdfbf7;
  font-family: "IBM Plex Mono", monospace;
  font-size: clamp(42px, 6vw, 82px);
  letter-spacing: .12em;
  line-height: 1;
  box-shadow: 0 20px 50px rgba(10, 17, 40, .25), inset 0 1px 0 rgba(255, 255, 255, .08);
  position: relative
}

.counter-meta,
.media-reel .overline {
  font-size: 12px;
  text-transform: uppercase
}

.counter-digit::before {
  left: 0;
  right: 0;
  top: 50%;
  height: 1px;
  background: rgba(255, 255, 255, .12)
}

.counter-meta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  letter-spacing: .16em;
  color: rgba(10, 17, 40, .55)
}

.media-reel-title,
.video-content h3 {
  font-family: "Cormorant Garamond";
  color: #0a1128
}

.counter-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #7c1b24;
  animation: 1.8s infinite counterPulse
}

@keyframes counterPulse {

  0%,
  100% {
    transform: scale(1);
    opacity: 1
  }

  50% {
    transform: scale(1.5);
    opacity: .5
  }
}

.media-reel {
  position: relative;
  padding: 160px 0;
  background: linear-gradient(180deg, #fdfbf7 0, #f5f0e8 100%);
  overflow: hidden
}

.media-reel::before {
  pointer-events: none;
  top: -250px;
  right: -250px;
  width: 700px;
  height: 700px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(124, 27, 36, .08), transparent 70%);
  pointer-events: none
}

.media-reel::after {
  pointer-events: none;
  bottom: -250px;
  left: -250px;
  width: 650px;
  height: 650px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(30, 42, 63, .05), transparent 70%);
  pointer-events: none
}

.media-reel .overline {
  margin-bottom: 20px;
  letter-spacing: .28em;
  color: #7c1b24
}

.media-reel-title {
  margin-bottom: 24px;
  font-size: clamp(54px, 6vw, 96px);
  line-height: .92;
  letter-spacing: -.05em
}

.media-reel-subtitle {
  max-width: 760px;
  margin: auto;
  font-size: 18px;
  line-height: 1.9;
  color: #3b4252
}

.media-video-card {
  position: relative;
  height: 100%;
  overflow: hidden;
  border-radius: 32px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .88), rgba(255, 255, 255, .68));
  border: 1px solid rgba(10, 17, 40, .06);
  backdrop-filter: blur(16px);
  box-shadow: 0 30px 90px rgba(10, 17, 40, .08);
  transition: .45s
}

.media-video-card:hover {
  transform: translateY(-10px)
}

.video-content {
  padding: 35px
}

.video-tag {
  display: inline-flex;
  align-items: center;
  padding: 8px 16px;
  border-radius: 999px;
  background: rgba(124, 27, 36, .08);
  color: #7c1b24;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
  margin-bottom: 18px
}

.video-content h3 {
  margin-bottom: 16px;
  font-size: 42px;
  line-height: 1
}

.authority-highlight p,
.video-content p {
  margin: 0;
  font-size: 17px;
  line-height: 1.9;
  color: #3b4252
}

.media-video-card::before {
  inset: 0;
  background: linear-gradient(135deg, rgba(255, 255, 255, .1), transparent 45%);
  opacity: 0;
  transition: .45s;
  pointer-events: none
}

@media (max-width:991px) {
  .media-featured .media-image-wrap {
    aspect-ratio: 0.9
  }

  .media-reel {
    padding: 110px 0
  }

  .video-content {
    padding: 28px
  }

  .video-content h3 {
    font-size: 34px
  }
}

.site-menu-trigger {
  margin-right: 28px;
  display: flex;
  align-items: center
}

.custom-toggler {
  border: 0 !important;
  background: 0 0 !important;
  box-shadow: none !important;
  padding: 0
}

.custom-toggler .navbar-toggler-icon {
  display: none
}

.custom-toggler span {
  display: block;
  width: 30px;
  height: 2px;
  background: #fdfbf7;
  margin: 7px 0;
  transition: .35s
}

.custom-toggler span:nth-child(2) {
  width: 22px
}

.custom-toggler span:nth-child(3) {
  width: 14px
}

.custom-toggler:hover span {
  width: 30px
}

.header-keywords {
  gap: 16px
}

.header-keywords span {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #fdfbf7;
  opacity: .8
}

.header-keywords .divider {
  width: 1px;
  height: 14px;
  background: rgba(255, 255, 255, .25)
}

@media(max-width:1199px) {
  .site-menu-trigger {
    display: none
  }
}

.footer-security {
  display: inline-flex;
  align-items: center;
  gap: 18px;
  padding: 16px 22px;
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .04), rgba(255, 255, 255, .01));
  border: 1px solid rgba(255, 255, 255, .08);
  transition: .35s
}

.sitemap-page::after,
.sitemap-page::before {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  content: ""
}

.footer-security:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 255, 255, .15)
}

.footer-security-badge img {
  width: 72px;
  height: auto;
  display: block
}

.footer-security-content {
  display: flex;
  flex-direction: column;
  gap: 5px
}

.footer-security-content a {
  text-decoration: none;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .15em;
  color: rgba(253, 251, 247, .7);
  transition: .3s
}

.footer .copyright {
  margin-top: 24px;
  text-align: center;
  font-size: 12px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgba(253, 251, 247, .45)
}

.authority-overline,
.sitemap-page .overline {
  font-size: 12px;
  letter-spacing: .25em;
  text-transform: uppercase
}

.sitemap-page {
  position: relative;
  padding: 180px 0 140px;
  background: linear-gradient(to bottom, #fdfbf7 0, #f4efe7 100%);
  overflow: hidden
}

.sitemap-page::before {
  top: -250px;
  right: -250px;
  width: 700px;
  height: 700px;
  background: radial-gradient(circle, rgba(124, 27, 36, .07), transparent 72%)
}

.sitemap-page::after {
  bottom: -250px;
  left: -250px;
  width: 650px;
  height: 650px;
  background: radial-gradient(circle, rgba(30, 42, 63, .05), transparent 72%)
}

.sitemap-page .overline {
  margin-bottom: 24px;
  color: #7c1b24
}

.sitemap-page .sitemap-title,
.sitemap-page h3 {
  color: #0a1128;
  font-family: "Cormorant Garamond"
}

.sitemap-page .sitemap-title {
  margin-bottom: 70px;
  font-size: clamp(58px, 7vw, 110px);
  line-height: .9;
  letter-spacing: -.05em
}

.sitemap-page h3 {
  margin-bottom: 28px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(10, 17, 40, .08);
  font-size: 36px
}

.sitemap-page .sitemap-list li {
  margin-bottom: 12px
}

.sitemap-page .sitemap-list a {
  position: relative;
  display: inline-block;
  padding: 10px 0;
  color: #3b4252;
  font-size: 17px;
  text-decoration: none;
  transition: .35s
}

.sitemap-page .sitemap-list a::before {
  content: "↗";
  margin-right: 10px;
  color: #7c1b24;
  opacity: 0;
  transform: translateX(-10px);
  transition: .35s
}

.sitemap-page .sitemap-list a:hover {
  color: #0a1128;
  transform: translateX(8px)
}

.sitemap-page .sitemap-list a:hover::before {
  opacity: 1;
  transform: translateX(0)
}

.sitemap-page .col-md-4 {
  position: relative;
  padding: 40px;
  border-radius: 30px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .85), rgba(255, 255, 255, .55));
  border: 1px solid rgba(10, 17, 40, .05);
  backdrop-filter: blur(12px);
  box-shadow: 0 20px 60px rgba(10, 17, 40, .05);
  transition: .4s
}

.sitemap-page .col-md-4:hover {
  transform: translateY(-8px);
  box-shadow: 0 30px 80px rgba(10, 17, 40, .08)
}

@media (max-width:991px) {
  .sitemap-page {
    padding: 130px 0 100px
  }

  .sitemap-page .sitemap-title {
    font-size: 72px
  }

  .sitemap-page .col-md-4 {
    padding: 32px
  }
}

.authority-section {
  position: relative;
  padding: 120px 0;
  background: linear-gradient(180deg, #fdfbf7 0, #f4efe7 100%);
  overflow: hidden
}

.authority-section .authority-card {
  position: relative;
  padding: 70px;
  border-radius: 36px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .92), rgba(255, 255, 255, .7));
  backdrop-filter: blur(16px);
  border: 1px solid rgba(10, 17, 40, .05);
  box-shadow: 0 30px 90px rgba(10, 17, 40, .08)
}

.authority-label {
  display: flex;
  align-items: center;
  gap: 18px
}

.authority-line {
  width: 60px;
  height: 2px;
  background: #7c1b24
}

.authority-overline {
  margin: 0;
  color: #7c1b24
}

.authority-content h2 {
  margin-bottom: 24px;
  font-family: "Cormorant Garamond";
  font-size: clamp(42px, 5vw, 72px);
  line-height: .95;
  letter-spacing: -.04em;
  color: #0a1128
}

.highlight-badge,
.questionnaire-form label {
  text-transform: uppercase;
  letter-spacing: .15em
}

.authority-content>p {
  margin-bottom: 40px;
  font-size: 18px;
  line-height: 1.95;
  color: #3b4252
}

.authority-highlight {
  padding: 28px 32px;
  border-left: 4px solid #7c1b24;
  background: rgba(124, 27, 36, .04);
  border-radius: 0 20px 20px 0
}

.highlight-badge {
  display: inline-block;
  margin-bottom: 15px;
  padding: 8px 14px;
  border-radius: 999px;
  background: #7c1b24;
  color: #fff;
  font-size: 11px;
  font-weight: 600
}

@media (max-width:991px) {
  .authority-section {
    padding: 90px 0
  }

  .authority-section .authority-card {
    padding: 40px
  }
}

.trial-hero {
  padding: 180px 0 120px;
  background: linear-gradient(180deg, #1e2a3f 0, #162133 100%);
  text-align: center
}

.trial-hero-title {
  font-family: "Cormorant Garamond";
  font-size: clamp(64px, 8vw, 120px);
  color: #fdfbf7;
  line-height: .9
}

.trial-hero-text {
  max-width: 760px;
  margin: 30px auto 0;
  color: rgba(253, 251, 247, .75);
  line-height: 1.9
}

.trial-benefits,
.trial-faq {
  padding: 120px 0;
  background: #fdfbf7
}

.benefit-card {
  padding: 40px;
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 20px 60px rgba(10, 17, 40, .06)
}

.benefit-card span {
  color: #7c1b24;
  font-weight: 700
}

.benefit-card h3 {
  margin: 15px 0;
  font-family: "Cormorant Garamond";
  font-size: 36px
}

.trial-pricing-section {
  padding: 120px 0;
  background: #0a1128
}

.trial-pricing-card {
  padding: 70px;
  text-align: center;
  border-radius: 32px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, .02));
  border: 1px solid rgba(255, 255, 255, .08)
}

.price {
  font-family: "Cormorant Garamond";
  font-size: 120px;
  color: #fdfbf7;
  line-height: 1
}

.pricing-text {
  color: rgba(255, 255, 255, .75);
  max-width: 650px;
  margin: 25px auto
}

.pricing-list {
  list-style: none;
  padding: 0;
  margin: 40px 0
}

.pricing-list li {
  margin-bottom: 12px;
  color: #fdfbf7
}

.btn-trial-book {
  display: inline-flex;
  padding: 18px 40px;
  border-radius: 999px;
  background: #7c1b24;
  color: #fff;
  text-decoration: none;
  font-weight: 600
}

.pricing-note {
  margin-top: 20px;
  color: rgba(255, 255, 255, .5)
}

.questionnaire-card {
  border-radius: 36px;
  background: #fff;
  box-shadow: 0 30px 90px rgba(10, 17, 40, .08);
  border: 1px solid rgba(10, 17, 40, .05)
}

.consult-card,
.questionnaire-form {
  box-shadow: 0 25px 80px rgba(10, 17, 40, .06)
}

.questionnaire-content h2 {
  margin-bottom: 24px;
  font-family: "Cormorant Garamond";
  font-size: clamp(52px, 6vw, 65px);
  line-height: .95;
  color: #0a1128
}

.questionnaire-content p {
  color: #3b4252;
  line-height: 1.9
}

.questionnaire-note {
  margin-top: 30px;
  padding: 20px;
  border-left: 4px solid #7c1b24;
  background: rgba(124, 27, 36, .05);
  color: #3b4252
}

.questionnaire-form {
  border-radius: 28px;
  background: #fff;
  border: 1px solid rgba(10, 17, 40, .06)
}

.questionnaire-form label {
  display: block;
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: 600;
  color: #0a1128
}

.questionnaire-form input[type=date],
.questionnaire-form input[type=email],
.questionnaire-form input[type=tel],
.questionnaire-form input[type=text],
.questionnaire-form select,
.questionnaire-form textarea {
  width: 100%;
  padding: 18px 20px;
  border-radius: 16px;
  border: 1px solid rgba(10, 17, 40, .1);
  background: #fdfbf7;
  color: #0a1128;
  font-size: 16px;
  transition: .3s;
  box-shadow: none
}

.questionnaire-form input:focus,
.questionnaire-form select:focus,
.questionnaire-form textarea:focus {
  outline: 0;
  border-color: #7c1b24;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(124, 27, 36, .08)
}

.questionnaire-form input::placeholder,
.questionnaire-form textarea::placeholder {
  color: rgba(10, 17, 40, .45)
}

.questionnaire-form select {
  cursor: pointer
}

.questionnaire-form .wpcf7-acceptance {
  display: block;
  margin-top: 15px
}

.questionnaire-form .wpcf7-acceptance label {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-size: 14px;
  line-height: 1.7;
  text-transform: none;
  letter-spacing: 0;
  color: #3b4252
}

.questionnaire-form .wpcf7-acceptance input {
  margin-top: 4px
}

.questionnaire-form input[type=submit] {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: auto;
  min-width: 240px;
  padding: 18px 36px;
  border: none;
  border-radius: 999px;
  background: #7c1b24;
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .15em;
  cursor: pointer;
  transition: .35s
}

.questionnaire-form input[type=submit]:hover {
  background: #5f141b;
  transform: translateY(-2px);
  box-shadow: 0 15px 40px rgba(124, 27, 36, .25)
}

.questionnaire-form .wpcf7-response-output {
  margin-top: 25px !important;
  padding: 18px !important;
  border-radius: 14px !important;
  font-size: 14px
}

.questionnaire-form .wpcf7 form.sent .wpcf7-response-output {
  background: rgba(30, 150, 80, .08);
  border: 1px solid rgba(30, 150, 80, .15);
  color: #1e964f
}

.questionnaire-form .wpcf7-not-valid {
  border-color: #c62828 !important
}

.questionnaire-form .wpcf7-not-valid-tip {
  margin-top: 8px;
  font-size: 13px;
  color: #c62828
}

.questionnaire-form .form-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px
}

@media (max-width:767px) {
  .media-featured .media-feature {
    padding: 14px;
    border-radius: 22px
  }

  .visitor-counter {
    padding: 90px 0
  }

  .visitor-counter-card {
    padding: 40px 24px
  }

  .counter-digit {
    padding: 18px 20px;
    letter-spacing: .08em
  }

  .media-reel {
    padding: 85px 0
  }

  .media-reel-title {
    font-size: 52px
  }

  .video-content {
    padding: 24px
  }

  .video-content h3 {
    font-size: 28px
  }

  .media-video-card {
    border-radius: 24px
  }

  .sitemap-page {
    padding: 90px 0 80px
  }

  .sitemap-page .sitemap-title {
    font-size: 52px;
    line-height: 1
  }

  .sitemap-page h3 {
    font-size: 30px
  }

  .sitemap-page .col-md-4 {
    padding: 28px 24px
  }

  .authority-section .authority-card,
  .questionnaire-form {
    padding: 28px
  }

  .authority-content h2 {
    font-size: 42px
  }

  .questionnaire-form .form-row {
    grid-template-columns: 1fr
  }

  .questionnaire-form input[type=submit] {
    width: 100%
  }
}

.questionnaire-card {
  padding: 60px
}

.questionnaire-title {
  font-size: clamp(48px, 4vw, 72px);
  line-height: .95;
  margin-bottom: 25px
}

.questionnaire-text {
  margin-bottom: 20px;
  line-height: 1.9
}

.consult-card h2,
.scenario-title {
  line-height: .95;
  color: #0a1128;
  font-family: "Cormorant Garamond"
}

.questionnaire-benefits {
  margin-top: 35px;
  display: flex;
  flex-direction: column;
  gap: 14px
}

.benefit-item {
  font-size: 14px;
  font-weight: 500;
  color: #0a1128
}

.questionnaire-form {
  padding: 45px
}

.consult-cta,
.consult-disclaimer,
.consult-scenarios,
.questionnaire-section {
  padding: 140px 0
}

.consult-disclaimer,
.questionnaire-section {
  background: #fdfbf7
}

.consult-card {
  background: #fff;
  padding: 80px;
  border-radius: 32px;
  border: 1px solid rgba(10, 17, 40, .06)
}

.consult-card h2 {
  font-size: clamp(52px, 5vw, 84px);
  margin-bottom: 35px
}

.consult-text p {
  font-size: 17px;
  line-height: 2;
  color: #4d5668;
  margin-bottom: 24px
}

.consult-scenarios {
  background: #f8f4ee
}

.scenario-title {
  font-size: clamp(54px, 5vw, 86px);
  margin-bottom: 20px
}

.scenario-card {
  height: 100%;
  padding: 40px;
  border-radius: 24px;
  background: #fff;
  border: 1px solid rgba(10, 17, 40, .08);
  transition: .35s;
  box-shadow: 0 10px 30px rgba(10, 17, 40, .04)
}

.scenario-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 50px rgba(10, 17, 40, .08)
}

.scenario-card p {
  margin: 0;
  color: #4d5668;
  line-height: 1.8
}

.scenario-footer {
  max-width: 900px;
  margin: 80px auto 0;
  text-align: center
}

.scenario-footer h3 {
  font-family: "Cormorant Garamond";
  font-size: clamp(44px, 4vw, 68px);
  line-height: 1
}

.scenario-footer p {
  margin-top: 25px;
  color: #4d5668;
  line-height: 1.9
}

.questionnaire-wrapper {
  background: #fff;
  padding: 70px;
  border-radius: 36px;
  border: 1px solid rgba(10, 17, 40, .06);
  box-shadow: 0 30px 90px rgba(10, 17, 40, .08)
}

.questionnaire-header {
  max-width: 800px;
  margin: 0 auto 60px;
  text-align: center
}

.questionnaire-header h2 {
  font-family: "Cormorant Garamond";
  font-size: clamp(54px, 5vw, 82px);
  line-height: .95;
  color: #0a1128;
  margin-bottom: 20px
}

.questionnaire-header p {
  color: #5d6576;
  line-height: 1.9
}

.questionnaire-wrapper label {
  display: block;
  margin-bottom: 8px;
  color: #0a1128;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase
}

.questionnaire-wrapper input,
.questionnaire-wrapper select,
.questionnaire-wrapper textarea {
  width: 100%;
  padding: 16px 18px;
  border-radius: 14px;
  border: 1px solid rgba(10, 17, 40, .1);
  background: #fff;
  transition: .3s
}

.questionnaire-wrapper input:focus,
.questionnaire-wrapper select:focus,
.questionnaire-wrapper textarea:focus {
  outline: 0;
  border-color: #7c1b24;
  box-shadow: 0 0 0 4px rgba(124, 27, 36, .08)
}

.questionnaire-wrapper hr {
  margin: 50px 0;
  border: 0;
  border-top: 1px solid rgba(10, 17, 40, .08)
}

.questionnaire-wrapper h3 {
  font-family: "Cormorant Garamond";
  font-size: 42px;
  color: #0a1128;
  margin-bottom: 30px
}

.questionnaire-wrapper .wpcf7-list-item {
  margin-right: 25px
}

.consult-consent {
  margin-top: 35px;
  padding: 25px;
  border-left: 4px solid #7c1b24;
  background: rgba(124, 27, 36, .04);
  border-radius: 0 12px 12px 0
}

.consult-consent .wpcf7-list-item {
  margin: 0
}

.questionnaire-wrapper .wpcf7-submit {
  border: none;
  background: #7c1b24;
  color: #fff;
  padding: 18px 42px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .14em;
  transition: .3s
}

.consult-cta-card .btn-primary,
.trial-product-content .btn-primary {
  background: #7c1b24;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 12px
}

.questionnaire-wrapper .wpcf7-submit:hover {
  background: #5c131b;
  transform: translateY(-2px)
}

.consult-cta {
  background: #0a1128
}

.consult-cta-card {
  padding: 90px;
  text-align: center;
  border-radius: 32px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .04), rgba(255, 255, 255, .02));
  border: 1px solid rgba(255, 255, 255, .08)
}

.consult-cta-card h2 {
  color: #fff;
  font-family: "Cormorant Garamond";
  font-size: clamp(54px, 5vw, 86px);
  line-height: .95;
  margin-bottom: 25px
}

.consult-cta-card p {
  max-width: 700px;
  margin: 0 auto 35px;
  color: rgba(255, 255, 255, .75);
  line-height: 1.9
}

.section-heading h2,
.trial-product-content h2 {
  line-height: .95;
  color: #0a1128;
  font-family: "Cormorant Garamond", serif
}

.consult-cta-card .btn-primary {
  border: none;
  padding: 18px 42px;
  border-radius: 999px
}

@media (max-width:991px) {

  .consult-card,
  .consult-cta-card,
  .questionnaire-wrapper {
    padding: 40px
  }

  .consult-cta,
  .consult-disclaimer,
  .consult-scenarios,
  .questionnaire-section {
    padding: 90px 0
  }

  .questionnaire-wrapper h3 {
    font-size: 32px
  }

  .scenario-card {
    padding: 28px
  }
}

.trial-disclaimer,
.trial-product-section,
.trial-related-products {
  padding: 120px 0
}

.trial-product-card {
  background: #fff;
  border-radius: 32px;
  padding: 70px;
  border: 1px solid rgba(10, 17, 40, .06);
  box-shadow: 0 30px 80px rgba(10, 17, 40, .08);
  overflow: hidden;
  position: relative
}

.trial-product-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: #7c1b24
}

.trial-product-image img {
  width: 100%;
  display: block;
  border-radius: 24px;
  object-fit: cover;
  box-shadow: 0 25px 60px rgba(10, 17, 40, .12)
}

.trial-product-content h2 {
  font-size: clamp(3.5rem, 5vw, 6rem);
  margin-bottom: 25px
}

.trial-price {
  font-size: 48px;
  font-weight: 600;
  color: #7c1b24;
  margin-bottom: 30px
}

.trial-description {
  font-size: 18px;
  line-height: 1.9;
  color: #5d6576;
  margin-bottom: 20px
}

.trial-product-content .btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 18px 38px;
  border-radius: 999px;
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  transition: .35s
}

.trial-product-content .btn-primary:hover {
  background: #5d141b;
  color: #fff;
  transform: translateY(-3px);
  box-shadow: 0 15px 40px rgba(124, 27, 36, .25)
}

.trial-included {
  padding: 120px 0;
  background: #f8f4ee
}

.section-heading h2 {
  font-size: clamp(3rem, 5vw, 5.5rem)
}

.included-card {
  background: #fff;
  padding: 40px;
  border-radius: 24px;
  height: 100%;
  border: 1px solid rgba(10, 17, 40, .06);
  box-shadow: 0 15px 35px rgba(10, 17, 40, .04);
  transition: .3s
}

.included-card h3 {
  font-family: "Cormorant Garamond", serif;
  font-size: 36px;
  color: #0a1128;
  margin-bottom: 20px
}

.included-card p {
  color: #5d6576;
  line-height: 1.9;
  margin: 0
}

.trial-disclaimer-card {
  max-width: 950px;
  margin: auto;
  background: #fff;
  border-radius: 30px;
  padding: 70px;
  border: 1px solid rgba(10, 17, 40, .06);
  box-shadow: 0 25px 70px rgba(10, 17, 40, .06)
}

.trial-disclaimer-card h2 {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(3rem, 5vw, 5rem);
  color: #0a1128;
  margin-bottom: 25px
}

.trial-disclaimer-card p {
  line-height: 2;
  color: #5d6576
}

.related-product-card {
  background: #fff;
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid rgba(10, 17, 40, .06);
  transition: .35s;
  height: 100%
}

.related-product-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 25px 60px rgba(10, 17, 40, .08)
}

.related-product-card img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  display: block
}

.related-product-card h3 {
  padding: 25px 25px 10px;
  font-family: "Cormorant Garamond", serif;
  font-size: 32px;
  color: #0a1128
}

.related-product-card .price {
  padding: 0 25px 25px;
  color: #7c1b24;
  font-weight: 600;
  font-size: 18px
}

.empty-products {
  text-align: center;
  padding: 90px 50px;
  border: 2px dashed rgba(10, 17, 40, .08);
  border-radius: 24px;
  color: #5d6576;
  font-size: 18px
}

@media(max-width:991px) {
  .footer-security {
    width: 100%;
    justify-content: center
  }

  .questionnaire-card,
  .trial-disclaimer-card,
  .trial-product-card {
    padding: 40px
  }

  .questionnaire-form {
    padding: 30px
  }

  .trial-product-content {
    text-align: center
  }

  .trial-price {
    font-size: 38px
  }

  .section-heading {
    margin-bottom: 50px
  }

  .trial-disclaimer,
  .trial-included,
  .trial-product-section,
  .trial-related-products {
    padding: 90px 0
  }
}

/* =====================================
   FORCE WOOCOMMERCE STYLING
===================================== */

body.woocommerce-cart,
body.woocommerce-checkout,
body.post-type-archive-product,
body.single-product,
body.woocommerce-account {

    background:#fdfbf7;
}

/* PAGE WRAPPER */

.woocommerce-wrapper {

    padding:100px 0;
}

/* CART */

body.woocommerce-cart .wp-block-woocommerce-cart {

    max-width:1400px;

    margin:auto;

    background:#fff;

    padding:40px;

    border-radius:24px;

    box-shadow:0 20px 60px rgba(10,17,40,.08);
}

/* CHECKOUT */

body.woocommerce-checkout .wp-block-woocommerce-checkout {

    max-width:1400px;

    margin:auto;

    background:#fff;

    padding:40px;

    border-radius:24px;

    box-shadow:0 20px 60px rgba(10,17,40,.08);
}

/* INPUTS */

body.woocommerce-cart input,
body.woocommerce-checkout input,
body.woocommerce-checkout select,
body.woocommerce-checkout textarea {

    border-radius:12px !important;

    min-height:52px;

    border:1px solid rgba(10,17,40,.10);
}

/* BUTTONS */

body.woocommerce-cart button,
body.woocommerce-checkout button,
body.woocommerce-cart .wc-block-components-button,
body.woocommerce-checkout .wc-block-components-button {

    background:#7C1B24 !important;

    color:#fff !important;

    border:none !important;

    border-radius:999px !important;
}

/* PRODUCT PAGE */

body.single-product .product {

    max-width:1400px;

    margin:auto;

    padding:60px;

    background:#fff;

    border-radius:24px;
}

body.single-product .product_title {

    font-size:72px;

    line-height:.95;

    font-family:"Cormorant Garamond", serif;

    color:#0A1128;
}

body.single-product .price {

    color:#7C1B24 !important;

    font-size:42px !important;
}

/* SHOP */

body.post-type-archive-product ul.products {

    display:grid !important;

    grid-template-columns:repeat(3,1fr);

    gap:40px;
}

body.post-type-archive-product ul.products li.product {

    width:100% !important;

    margin:0 !important;

    background:#fff;

    border-radius:24px;

    overflow:hidden;

    box-shadow:0 15px 40px rgba(10,17,40,.06);
}

/* MOBILE */

@media(max-width:991px){

body.post-type-archive-product ul.products{

grid-template-columns:1fr;
}

}

/* ==================================================
   WOOCOMMERCE BLOCKS
================================================== */

.woocommerce-cart main.site-main,
.woocommerce-checkout main.site-main,
.woocommerce-account main.site-main{
    padding:80px 0;
    background:#f8f6f2;
}

/* MAIN WRAPPER */

.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout{

    max-width:1400px;
    margin:auto;
}

/* CART CARD */

.wc-block-cart{

    background:#fff;

    border-radius:30px;

    padding:40px;

    box-shadow:0 25px 70px rgba(0,0,0,.06);
}

/* FIX TEXT COLORS */

.wc-block-cart *,
.wc-block-checkout *,
.wc-block-components-totals-wrapper *,
.wc-block-components-product-name{

    color:#0f172a !important;
}

/* PRODUCT NAME */

.wc-block-components-product-name{

    font-size:22px;

    font-weight:700;

    text-decoration:none;
}

/* PRODUCT PRICE */

.wc-block-components-product-price__value,
.wc-block-formatted-money-amount{

    color:#8b1e24 !important;

    font-weight:700;

    font-size:24px;
}

/* SALE PRICE */

.wc-block-components-product-price del{

    opacity:.35;
}

/* PRODUCT IMAGE */

.wc-block-cart-item__image img{

    border-radius:14px;

    width:90px;

    height:120px;

    object-fit:cover;
}

/* QUANTITY BUTTONS */

.wc-block-components-quantity-selector{

    border-radius:999px;

    overflow:hidden;

    border:1px solid rgba(15,23,42,.12);
}

.wc-block-components-quantity-selector__button{

    background:#f5f5f5 !important;

    color:#0f172a !important;
}

.wc-block-components-quantity-selector__input{

    border:none !important;

    min-width:55px;
}

/* REMOVE BUTTON */

.wc-block-cart-item__remove-link{

    color:#8b1e24 !important;
}

/* SIDEBAR */

.wc-block-cart__sidebar{

    background:#fafafa;

    padding:35px;

    border-radius:24px;

    border:1px solid rgba(0,0,0,.06);
}

/* TOTALS TITLE */

.wc-block-cart__totals-title{

    font-size:30px;

    font-weight:700;

    margin-bottom:25px;
}

/* CHECKOUT BUTTON */

.wc-block-cart__submit-button,
.wc-block-components-button{

    background:#8b1e24 !important;

    color:#fff !important;

    border:none !important;

    min-height:60px;

    border-radius:999px !important;

    font-weight:700;

    transition:.3s;
}

.wc-block-cart__submit-button:hover,
.wc-block-components-button:hover{

    transform:translateY(-2px);
}

/* CHECKOUT PAGE */

.wc-block-checkout{

    background:#fff;

    padding:50px;

    border-radius:30px;

    box-shadow:0 25px 70px rgba(0,0,0,.06);
}

/* FORM INPUTS */

.wc-block-components-text-input input,
.wc-block-components-address-form input,
.wc-block-components-address-form select,
.wc-block-components-address-form textarea{

    border-radius:14px !important;

    min-height:55px !important;

    border:1px solid rgba(15,23,42,.1) !important;
}

/* ORDER SUMMARY */

.wc-block-components-sidebar{

    background:#fafafa;

    border-radius:24px;

    padding:30px;
}

/* MOBILE */

@media(max-width:991px){

.wc-block-cart{

padding:20px;
}

.wc-block-checkout{

padding:20px;
}

}

/* ==========================
   HERO
========================== */

.testimonials-hero{

    padding:140px 0 100px;

    text-align:center;
}

.testimonials-hero .hero-title{

    font-size:clamp(3rem,5vw,6rem);

    color:#0A1128;

    margin-bottom:25px;
}

.testimonials-hero .hero-text{

    max-width:850px;

    margin:auto;

    color:#5D6576;

    line-height:1.9;
}

/* ==========================
   LIST
========================== */

.testimonials-list{

    padding:0 0 140px;
}

.testimonial-entry{

    padding:80px 0;

    border-top:1px solid rgba(10,17,40,.08);
}

.testimonial-entry:last-child{

    border-bottom:1px solid rgba(10,17,40,.08);
}

/* ==========================
   DATE
========================== */

.testimonial-date{

    font-size:13px;

    letter-spacing:.15em;

    text-transform:uppercase;

    color:#7C1B24;

    font-weight:600;
}

/* ==========================
   QUOTE
========================== */

.testimonial-content blockquote{

    margin:0;

    font-size:1.45rem;

    line-height:2;

    color:#0A1128;

    position:relative;
}

.testimonial-content blockquote::before{

    content:"“";

    position:absolute;

    left:-40px;

    top:-30px;

    font-size:7rem;

    color:rgba(124,27,36,.10);

    font-family:serif;
}

/* ==========================
   AUTHOR
========================== */

.testimonial-author{

    margin-top:45px;

    padding-top:25px;

    border-top:1px solid rgba(10,17,40,.08);
}

.testimonial-author h3{

    margin-bottom:10px;

    font-size:1.3rem;

    color:#0A1128;
}

.testimonial-author a{

    display:block;

    color:#7C1B24;

    text-decoration:none;

    margin-bottom:6px;

    transition:.3s;
}

.testimonial-author a:hover{

    opacity:.7;
}

/* ==========================
   MOBILE
========================== */

@media(max-width:991px){

.testimonial-entry{

padding:50px 0;
}

.testimonial-content blockquote{

font-size:1.1rem;
}

.testimonial-content blockquote::before{

left:-10px;

font-size:5rem;
}

.testimonial-meta{

margin-bottom:25px;
}

}

.testimonials-hero{
    padding:180px 0 120px;
    position:relative;
}

.testimonials-hero::after{
    content:"TESTIMONIALS";
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    font-size:14vw;
    font-weight:700;
    color:rgba(10,17,40,.03);
    pointer-events:none;
}

.testimonial-entry:first-child{

    background:#fff;

    border-radius:40px;

    padding:80px;

    margin-bottom:80px;

    border-left:8px solid #7C1B24;

    box-shadow:
    0 30px 80px rgba(10,17,40,.08);
}

.testimonial-content{

    position:relative;
}

.testimonial-content::before{

    content:"“";

    position:absolute;

    left:-50px;

    top:-60px;

    font-size:12rem;

    color:rgba(124,27,36,.08);

    font-family:serif;
}

.testimonial-content{

    position:relative;
}

.testimonial-content::before{

    content:"“";

    position:absolute;

    left:-50px;

    top:-60px;

    font-size:12rem;

    color:rgba(124,27,36,.08);

    font-family:serif;
}

.testimonial-trust{

    text-align:center;

    padding:30px;

    margin-bottom:100px;

    font-size:18px;

    color:#7C1B24;

    border-top:1px solid rgba(10,17,40,.08);

    border-bottom:1px solid rgba(10,17,40,.08);
}

.testimonials-list{

    position:relative;
}

.testimonials-list::before{

    content:"";

    position:absolute;

    left:22%;

    top:0;

    width:1px;

    height:100%;

    background:rgba(10,17,40,.08);
}

.testimonial-entry{

    background:#fff;

    border-radius:28px;

    padding:60px;

    margin-bottom:40px;

    border:1px solid rgba(10,17,40,.05);

    transition:.35s;
}

.testimonial-entry:hover{

    transform:translateY(-6px);

    box-shadow:
    0 25px 70px rgba(10,17,40,.08);
}

/* ====================================
   TESTIMONIAL WALL
==================================== */

.testimonials-wall{

    padding:140px 0;

    overflow:hidden;
}

.testimonial-sidebar{

    position:sticky;

    top:120px;
}

.testimonial-sidebar h2{

    font-size:clamp(3rem,5vw,5.5rem);

    line-height:.95;

    margin-bottom:25px;
}

.testimonial-sidebar p{

    color:#5D6576;

    line-height:1.9;
}

/* ====================================
   AUTO SCROLL
==================================== */

.testimonial-slider-wrap{

    height:900px;

    overflow:hidden;

    position:relative;
}

.testimonial-slider{

    display:flex;

    flex-direction:column;

    gap:30px;

    animation:testimonialScroll 120s linear infinite;
}

@keyframes testimonialScroll{

    0%{
        transform:translateY(0);
    }

    100%{
        transform:translateY(-50%);
    }
}

/* ====================================
   CARD
==================================== */

.testimonial-slide{

    background:#fff;

    border-radius:28px;

    padding:40px;

    border:1px solid rgba(10,17,40,.06);

    box-shadow:
    0 15px 40px rgba(10,17,40,.05);
}

.testimonial-slide .date{

    font-size:12px;

    letter-spacing:.15em;

    text-transform:uppercase;

    color:#7C1B24;

    margin-bottom:20px;
}

.testimonial-slide blockquote{

    margin:0;

    font-size:20px;

    line-height:2;

    color:#0A1128;
}

.testimonial-slide .author{

    margin-top:30px;

    padding-top:20px;

    border-top:1px solid rgba(10,17,40,.08);
}

.testimonial-slide strong{

    display:block;

    font-size:18px;
}

.testimonial-slide span{

    color:#7C1B24;
}

/* pause on hover */

.testimonial-slider:hover{

    animation-play-state:paused;
}

/* mobile */

@media(max-width:991px){

.testimonial-sidebar{

position:relative;

top:auto;

margin-bottom:60px;
}

.testimonial-slider-wrap{

height:700px;
}

}

```css
/* =====================================
   FALSELY ACCUSED PAGE
===================================== */

.fa-hero{
    padding:140px 0 100px;
    background:linear-gradient(135deg,#081124 0%,#13264a 100%);
    color:#fff;
}

.fa-title{
    font-size:clamp(3rem,6vw,5.5rem);
    line-height:.95;
    color:#fff;
    margin-bottom:24px;
}

.fa-intro{
    max-width:760px;
    margin:0 auto;
    font-size:1.125rem;
    line-height:1.9;
    opacity:.85;
}

.fa-content-section{
    padding:100px 0 140px;
    background:#f6f4ef;
}

.fa-card{
    background:#fff;
    border-radius:36px;
    padding:80px;
    box-shadow:0 35px 90px rgba(10,17,40,.08);
}

.fa-highlight-box{
    background:#f8f4ee;
    border-left:6px solid #7C1B24;
    padding:40px;
    border-radius:0 24px 24px 0;
}

.fa-highlight-box h2{
    margin-bottom:24px;
    font-size:clamp(2rem,4vw,3rem);
}

.fa-highlight-box p,
.fa-card p{
    color:#556070;
    line-height:2;
    font-size:1.05rem;
}

.fa-image img{
    width:100%;
    border-radius:28px;
    box-shadow:0 25px 60px rgba(0,0,0,.12);
}

.fa-divider{
    width:120px;
    height:2px;
    background:#7C1B24;
    margin:70px auto;
}

.section-title{
    font-size:clamp(2rem,4vw,3rem);
    margin-bottom:24px;
}

.fa-quote{
    position:relative;
    background:#0A1128;
    color:#fff;
    padding:40px 50px;
    margin:50px 0;
    border-radius:24px;
    font-size:1.3rem;
    line-height:1.8;
}

.fa-quote::before{
    content:"“";
    position:absolute;
    top:-30px;
    left:20px;
    font-size:8rem;
    color:rgba(255,255,255,.08);
    line-height:1;
}

.video-card{
    background:#fff;
    border:1px solid rgba(10,17,40,.08);
    border-radius:24px;
    padding:30px;
    height:100%;
}

.video-card h3{
    margin-bottom:24px;
}

.video-card iframe{
    border-radius:18px;
}

.fa-cta{
    padding:0 0 140px;
    background:#f6f4ef;
}

.fa-cta-card{
    background:#0A1128;
    color:#fff;
    border-radius:36px;
    padding:80px;
    text-align:center;
}

.fa-cta-card h2{
    color:#fff;
    margin-bottom:20px;
}

.fa-cta-card p{
    max-width:700px;
    margin:0 auto 40px;
    opacity:.85;
}

@media (max-width:991px){

    .fa-card{
        padding:40px 24px;
        border-radius:24px;
    }

    .fa-highlight-box{
        padding:28px;
    }

    .fa-cta-card{
        padding:50px 30px;
    }

    .fa-quote{
        padding:30px;
        font-size:1.1rem;
    }
}

/* ====================================
   CASE HERO
==================================== */

.case-hero{

    position:relative;

    overflow:hidden;

    padding:180px 0 120px;

    background:
        radial-gradient(
            circle at top left,
            rgba(124,27,36,.20) 0%,
            transparent 35%
        ),
        linear-gradient(
            135deg,
            #050b1c 0%,
            #0a1128 45%,
            #152a52 100%
        );

    color:#fff;
}

/* subtle grid overlay */

.case-hero::before{

    content:"";

    position:absolute;

    inset:0;

    background-image:
        linear-gradient(
            rgba(255,255,255,.03) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.03) 1px,
            transparent 1px
        );

    background-size:60px 60px;

    pointer-events:none;
}

/* giant watermark */

.case-hero-pattern{

    position:absolute;

    right:-80px;

    bottom:-80px;

    width:420px;

    height:420px;

    border:1px solid rgba(255,255,255,.06);

    border-radius:50%;
}

.case-hero-pattern::before{

    content:"";

    position:absolute;

    inset:40px;

    border:1px solid rgba(255,255,255,.06);

    border-radius:50%;
}

.case-hero-pattern::after{

    content:"";

    position:absolute;

    inset:80px;

    border:1px solid rgba(255,255,255,.06);

    border-radius:50%;
}

/* badge */

.case-hero-badge{

    display:inline-flex;

    align-items:center;

    gap:12px;

    padding:10px 18px;

    margin-bottom:30px;

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.12);

    border-radius:999px;

    backdrop-filter:blur(12px);

    font-size:.78rem;

    font-weight:700;

    letter-spacing:.18em;

    text-transform:uppercase;

    color:#d4d9e4;
}

.case-hero-badge::before{

    content:"";

    width:8px;

    height:8px;

    border-radius:50%;

    background:#a32035;

    box-shadow:0 0 15px rgba(163,32,53,.7);
}

/* title */

.case-hero-title{

    max-width:900px;

    margin:0 auto 30px;

    font-size:clamp(3rem,6vw,5.75rem);

    line-height:.95;

    letter-spacing:-.04em;

    color:#fff;
}

/* intro */

.case-hero-text{

    max-width:760px;

    margin:0 auto;

    font-size:1.15rem;

    line-height:1.9;

    color:rgba(255,255,255,.78);
}

/* responsive */

@media (max-width:991px){

    .case-hero{

        padding:140px 0 90px;
    }

    .case-hero-pattern{

        width:260px;

        height:260px;

        right:-100px;

        bottom:-100px;
    }

    .case-hero-text{

        font-size:1rem;
    }
}

@media (max-width:575px){

    .case-hero{

        padding:120px 0 80px;
    }

    .case-hero-badge{

        font-size:.68rem;

        letter-spacing:.12em;
    }

    .case-hero-title{

        line-height:1.05;
    }
}

/* ====================================
   CASE ACTION CTA
==================================== */

.case-action{

    padding:0 0 140px;

    background:#f6f4ef;

    position:relative;
}

.case-action-card{

    position:relative;

    overflow:hidden;

    background:
        linear-gradient(
            135deg,
            #081124 0%,
            #0f1c3d 100%
        );

    border-radius:40px;

    padding:90px 70px;

    text-align:center;

    box-shadow:
        0 35px 90px rgba(10,17,40,.18);
}

/* decorative glow */

.case-action-card::before{

    content:"";

    position:absolute;

    width:380px;

    height:380px;

    top:-180px;

    right:-120px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(124,27,36,.35) 0%,
            transparent 70%
        );

    pointer-events:none;
}

.case-action-title{

    color:#fff;

    font-size:clamp(2rem,4vw,3.5rem);

    margin-bottom:20px;

    letter-spacing:-.03em;
}

.case-action-text{

    max-width:720px;

    margin:0 auto 40px;

    color:rgba(255,255,255,.78);

    font-size:1.1rem;

    line-height:1.9;
}

.case-action-buttons{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:16px;

    flex-wrap:wrap;
}

/* optional button enhancements */

.case-action .btn-main,
.case-action .btn-alt{

    min-width:220px;
}

/* responsive */

@media (max-width:991px){

    .case-action{

        padding:0 0 100px;
    }

    .case-action-card{

        padding:60px 30px;

        border-radius:28px;
    }

    .case-action-text{

        font-size:1rem;
    }
}

@media (max-width:575px){

    .case-action-buttons{

        flex-direction:column;
    }

    .case-action .btn-main,
    .case-action .btn-alt{

        width:100%;
    }
}
/* ====================================
   CASE CTA BUTTONS
==================================== */

.case-action-buttons{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:18px;

    flex-wrap:wrap;
}

/* PRIMARY */

.case-btn-primary{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    min-width:240px;

    padding:18px 34px;

    background:#7C1B24;

    color:#fff;

    font-size:.95rem;

    font-weight:700;

    letter-spacing:.08em;

    text-transform:uppercase;

    text-decoration:none;

    border:1px solid #7C1B24;

    border-radius:999px;

    transition:all .35s ease;

    box-shadow:
        0 12px 30px rgba(124,27,36,.35);
}

.case-btn-primary:hover{

    transform:translateY(-3px);

    background:#941f2a;

    color:#fff;

    box-shadow:
        0 18px 40px rgba(124,27,36,.45);
}

/* SECONDARY */

.case-btn-secondary{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    min-width:240px;

    padding:18px 34px;

    background:rgba(255,255,255,.06);

    color:#fff;

    font-size:.95rem;

    font-weight:700;

    letter-spacing:.08em;

    text-transform:uppercase;

    text-decoration:none;

    border:1px solid rgba(255,255,255,.15);

    border-radius:999px;

    backdrop-filter:blur(12px);

    transition:all .35s ease;
}

.case-btn-secondary:hover{

    transform:translateY(-3px);

    background:#fff;

    color:#0A1128;

    border-color:#fff;
}

/* FOCUS */

.case-btn-primary:focus,
.case-btn-secondary:focus{

    outline:none;

    box-shadow:
        0 0 0 4px rgba(255,255,255,.15);
}

/* MOBILE */

@media (max-width:576px){

    .case-action-buttons{

        flex-direction:column;
    }

    .case-btn-primary,
    .case-btn-secondary{

        width:100%;
    }
}

```css
/* ===================================
   TONG'S TIPS
=================================== */

.tips-hero{
    padding:180px 0 120px;
    background:linear-gradient(135deg,#081124 0%,#122547 100%);
    color:#fff;
}

.tips-badge{
    display:inline-block;
    padding:12px 22px;
    margin-bottom:30px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.12);
    text-transform:uppercase;
    letter-spacing:.15em;
    font-size:.75rem;
}

.tips-title{
    font-size:clamp(3rem,6vw,5.5rem);
    color:#fff;
    margin-bottom:24px;
}

.tips-text{
    max-width:760px;
    margin:0 auto;
    color:rgba(255,255,255,.8);
    line-height:1.9;
}

.tips-content{
    padding:100px 0 140px;
    background:#f6f4ef;
}

.tips-card{
    background:#fff;
    border-radius:36px;
    padding:80px;
    box-shadow:0 30px 90px rgba(0,0,0,.08);
}

.tips-intro{
    font-size:1.1rem;
    line-height:2;
    color:#556070;
}

.alert-card{
    margin:50px 0;
    padding:40px;
    background:#f8f4ee;
    border-left:6px solid #7c1b24;
    border-radius:0 24px 24px 0;
}

.alert-card h2{
    margin:0;
}

.alert-card span{
    display:block;
    color:#7c1b24;
    margin-top:10px;
}

.tips-image img{
    width:100%;
    border-radius:24px;
    box-shadow:0 20px 50px rgba(0,0,0,.12);
}

.tips-section{
    margin-top:80px;
}

.tips-section h2{
    margin-bottom:35px;
}

.tips-checklist,
.tips-warning,
.comparison-card ul,
.tips-list ul{
    list-style:none;
    padding:0;
    margin:0;
}

.tips-checklist li,
.tips-list li{
    position:relative;
    padding-left:34px;
    margin-bottom:18px;
    line-height:1.8;
}

.tips-checklist li::before,
.tips-list li::before{
    content:"✓";
    position:absolute;
    left:0;
    color:#1d7c45;
    font-weight:700;
}

.tips-warning li{
    position:relative;
    padding-left:34px;
    margin-bottom:18px;
    line-height:1.8;
}

.tips-warning li::before{
    content:"✕";
    position:absolute;
    left:0;
    color:#7c1b24;
    font-weight:700;
}

.comparison-card{
    padding:40px;
    border-radius:24px;
    height:100%;
}

.comparison-card h3{
    margin-bottom:24px;
}

.comparison-card.success{
    background:#edf8f1;
}

.comparison-card.danger{
    background:#fff2f2;
}

.comparison-card li{
    margin-bottom:16px;
    line-height:1.8;
}

.tips-cta{
    margin-top:90px;
    padding:60px;
    background:#0a1128;
    border-radius:28px;
    text-align:center;
}

.tips-cta h3{
    color:#fff;
    margin-bottom:20px;
}

.tips-cta p{
    color:rgba(255,255,255,.75);
    margin-bottom:35px;
}

.tips-btn-primary,
.tips-btn-secondary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:220px;
    padding:16px 30px;
    border-radius:999px;
    text-decoration:none;
    font-weight:700;
    transition:.3s;
}

.tips-btn-primary{
    background:#7c1b24;
    color:#fff;
}

.tips-btn-primary:hover{
    background:#941f2a;
    color:#fff;
    transform:translateY(-3px);
}

.tips-btn-secondary{
    border:1px solid rgba(255,255,255,.2);
    color:#fff;
}

.tips-btn-secondary:hover{
    background:#fff;
    color:#0a1128;
}

@media(max-width:991px){

    .tips-card{
        padding:40px 24px;
    }

    .tips-cta{
        padding:40px 24px;
    }
}

@media(max-width:576px){

    .tips-btn-primary,
    .tips-btn-secondary{
        width:100%;
    }
}
/* ====================================
   GUIDE HERO
==================================== */

.guide-hero{

    position:relative;

    overflow:hidden;

    padding:180px 0 120px;

    background:
        radial-gradient(
            circle at top right,
            rgba(124,27,36,.18) 0%,
            transparent 35%
        ),
        linear-gradient(
            135deg,
            #050b1c 0%,
            #0a1128 45%,
            #152a52 100%
        );

    color:#fff;
}

.guide-hero::before{

    content:"";

    position:absolute;

    inset:0;

    background-image:
        linear-gradient(
            rgba(255,255,255,.03) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.03) 1px,
            transparent 1px
        );

    background-size:60px 60px;

    pointer-events:none;
}

.guide-hero-pattern{

    position:absolute;

    left:-100px;

    top:-100px;

    width:400px;

    height:400px;

    border:1px solid rgba(255,255,255,.06);

    border-radius:50%;
}

.guide-hero-pattern::before{

    content:"";

    position:absolute;

    inset:40px;

    border:1px solid rgba(255,255,255,.06);

    border-radius:50%;
}

.guide-hero-pattern::after{

    content:"";

    position:absolute;

    inset:80px;

    border:1px solid rgba(255,255,255,.06);

    border-radius:50%;
}

/* badge */

.guide-hero-badge{

    display:inline-flex;

    align-items:center;

    gap:12px;

    padding:10px 18px;

    margin-bottom:30px;

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.12);

    border-radius:999px;

    backdrop-filter:blur(12px);

    font-size:.78rem;

    font-weight:700;

    letter-spacing:.18em;

    text-transform:uppercase;

    color:#d4d9e4;
}

.guide-hero-badge::before{

    content:"";

    width:8px;

    height:8px;

    border-radius:50%;

    background:#7C1B24;

    box-shadow:0 0 15px rgba(124,27,36,.7);
}

/* title */

.guide-hero-title{

    max-width:900px;

    margin:0 auto 30px;

    font-size:clamp(3rem,6vw,5.75rem);

    line-height:.95;

    letter-spacing:-.04em;

    color:#fff;
}

/* description */

.guide-hero-text{

    max-width:760px;

    margin:0 auto;

    font-size:1.15rem;

    line-height:1.9;

    color:rgba(255,255,255,.78);
}

/* responsive */

@media (max-width:991px){

    .guide-hero{

        padding:140px 0 90px;
    }

    .guide-hero-pattern{

        width:260px;

        height:260px;

        left:-80px;

        top:-80px;
    }

    .guide-hero-text{

        font-size:1rem;
    }
}

@media (max-width:575px){

    .guide-hero{

        padding:120px 0 80px;
    }

    .guide-hero-badge{

        font-size:.68rem;

        letter-spacing:.12em;
    }

    .guide-hero-title{

        line-height:1.05;
    }
}

/* ==========================
   LEGISLATION HERO
========================== */

.legal-hero{
    position:relative;
    overflow:hidden;
    padding:180px 0 120px;
    background:linear-gradient(135deg,#050b1c 0%,#0a1128 45%,#152a52 100%);
    color:#fff;
}

.legal-hero-pattern{
    position:absolute;
    right:-120px;
    top:-120px;
    width:420px;
    height:420px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:50%;
}

.legal-hero-badge{
    display:inline-block;
    padding:12px 20px;
    margin-bottom:30px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.12);
    font-size:.75rem;
    text-transform:uppercase;
    letter-spacing:.15em;
}

.legal-hero-title{
    font-size:clamp(3rem,6vw,5.75rem);
    color:#fff;
    margin-bottom:24px;
}

.legal-hero-text{
    max-width:760px;
    margin:0 auto;
    color:rgba(255,255,255,.78);
    line-height:1.9;
}

/* ==========================
   CONTENT
========================== */

.legal-content{
    padding:100px 0 140px;
    background:#f6f4ef;
}

.legal-card{
    background:#fff;
    border-radius:36px;
    padding:80px;
    box-shadow:0 35px 90px rgba(10,17,40,.08);
}

.legal-intro{
    font-size:1.125rem;
    line-height:1.9;
    margin-bottom:50px;
}

.legal-navigation{
    background:#f8f4ee;
    padding:32px;
    border-radius:24px;
    margin-bottom:60px;
}

.legal-nav-links{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:20px;
}

.legal-nav-links a{
    padding:10px 18px;
    border-radius:999px;
    background:#fff;
    color:#0A1128;
    text-decoration:none;
    font-weight:600;
}

.legal-section{
    margin-bottom:90px;
    scroll-margin-top:140px;
}

.legal-section h2{
    margin-bottom:24px;
}

.legal-box{
    height:100%;
    padding:32px;
    border-radius:24px;
    background:#f8f4ee;
}

.legal-highlight{
    padding:24px 30px;
    margin:30px 0;
    border-left:4px solid #7C1B24;
    background:#f8f4ee;
    border-radius:0 16px 16px 0;
    font-weight:600;
}

.legal-list{
    padding-left:1.25rem;
}

.legal-list li{
    margin-bottom:16px;
    line-height:1.8;
}

.legal-image,
.legal-logo{
    border-radius:24px;
    box-shadow:0 20px 50px rgba(0,0,0,.12);
}

.legal-download{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding:32px;
    border-radius:24px;
    background:#f8f4ee;
}

/* ==========================
   CTA
========================== */

.legal-action{
    padding:0 0 140px;
    background:#f6f4ef;
}

.legal-action-card{
    padding:70px;
    border-radius:36px;
    background:#0A1128;
    text-align:center;
}

.legal-action-card h2{
    color:#fff;
}

.legal-action-card p{
    color:rgba(255,255,255,.75);
    max-width:700px;
    margin:20px auto 40px;
}

.legal-action-buttons{
    display:flex;
    justify-content:center;
    gap:16px;
    flex-wrap:wrap;
}

.legal-btn,
.legal-btn-primary,
.legal-btn-secondary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:16px 28px;
    border-radius:999px;
    text-decoration:none;
    font-weight:700;
    transition:.3s;
}

.legal-btn-primary,
.legal-btn{
    background:#7C1B24;
    color:#fff;
}

.legal-btn-secondary{
    border:1px solid rgba(255,255,255,.15);
    color:#fff;
}

.legal-btn-primary:hover,
.legal-btn:hover{
    color:#fff;
    transform:translateY(-2px);
}

.legal-btn-secondary:hover{
    background:#fff;
    color:#0A1128;
}

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

@media (max-width:991px){

    .legal-hero{
        padding:140px 0 90px;
    }

    .legal-card{
        padding:40px 24px;
        border-radius:24px;
    }

    .legal-download{
        flex-direction:column;
        align-items:flex-start;
    }

    .legal-action-card{
        padding:50px 24px;
    }
}

@media (max-width:576px){

    .legal-btn-primary,
    .legal-btn-secondary,
    .legal-btn{
        width:100%;
    }

    .legal-nav-links{
        flex-direction:column;
    }
}

/* ==========================
   ATTORNEY HERO
========================== */

.attorney-hero{
    position:relative;
    overflow:hidden;
    padding:180px 0 120px;
    background:linear-gradient(135deg,#050b1c 0%,#0a1128 45%,#152a52 100%);
    color:#fff;
}

.attorney-hero-pattern{
    position:absolute;
    left:-100px;
    bottom:-100px;
    width:420px;
    height:420px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:50%;
}

.attorney-hero-badge{
    display:inline-block;
    padding:12px 20px;
    margin-bottom:30px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.12);
    font-size:.75rem;
    letter-spacing:.15em;
    text-transform:uppercase;
}

.attorney-hero-title{
    font-size:clamp(3rem,6vw,5.5rem);
    color:#fff;
    margin-bottom:24px;
}

.attorney-hero-text{
    max-width:760px;
    margin:0 auto;
    line-height:1.9;
    color:rgba(255,255,255,.78);
}

/* ==========================
   CONTENT
========================== */

.attorney-content{
    padding:100px 0 140px;
    background:#f6f4ef;
}

.attorney-card{
    background:#fff;
    border-radius:36px;
    padding:80px;
    box-shadow:0 35px 90px rgba(10,17,40,.08);
}

.attorney-highlight{
    background:#f8f4ee;
    padding:40px;
    border-left:4px solid #7C1B24;
    border-radius:0 20px 20px 0;
}

.attorney-highlight h2{
    margin-bottom:20px;
}

.attorney-highlight p,
.attorney-card p{
    color:#556070;
    line-height:1.9;
}

.attorney-image{
    border-radius:28px;
    box-shadow:0 20px 50px rgba(0,0,0,.12);
}

.attorney-section{
    margin-top:80px;
}

.attorney-list{
    padding-left:1.25rem;
}

.attorney-list li{
    margin-bottom:16px;
    line-height:1.8;
}

.attorney-scenario{
    margin-top:80px;
}

.attorney-scenario-card{
    background:#0A1128;
    color:#fff;
    padding:50px;
    border-radius:28px;
}

.scenario-label{
    display:inline-block;
    margin-bottom:20px;
    padding:8px 16px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    font-size:.75rem;
    text-transform:uppercase;
    letter-spacing:.15em;
}

.attorney-scenario-card h3{
    color:#fff;
    margin-bottom:20px;
}

.attorney-scenario-card p{
    color:rgba(255,255,255,.8);
}

.attorney-checklist{
    background:#f8f4ee;
    padding:32px;
    border-radius:24px;
    height:100%;
}

.attorney-checklist ul{
    list-style:none;
    padding:0;
    margin:0;
}

.attorney-checklist li{
    position:relative;
    padding-left:32px;
    margin-bottom:18px;
    line-height:1.8;
}

.attorney-checklist li::before{
    content:"✓";
    position:absolute;
    left:0;
    color:#7C1B24;
    font-weight:700;
}

.attorney-note{
    margin-top:70px;
    padding:32px;
    background:#fff8e6;
    border:1px solid #f0dfb3;
    border-radius:20px;
}

/* ==========================
   CTA
========================== */

.attorney-action{
    padding:0 0 140px;
    background:#f6f4ef;
}

.attorney-action-card{
    background:#0A1128;
    padding:70px;
    border-radius:36px;
    text-align:center;
}

.attorney-action-card h2{
    color:#fff;
}

.attorney-action-card p{
    color:rgba(255,255,255,.78);
    max-width:680px;
    margin:20px auto 40px;
}

.attorney-action-buttons{
    display:flex;
    justify-content:center;
    gap:16px;
    flex-wrap:wrap;
}

.attorney-btn-primary,
.attorney-btn-secondary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:220px;
    padding:16px 28px;
    border-radius:999px;
    text-decoration:none;
    font-weight:700;
    transition:.3s;
}

.attorney-btn-primary{
    background:#7C1B24;
    color:#fff;
}

.attorney-btn-primary:hover{
    color:#fff;
    transform:translateY(-2px);
}

.attorney-btn-secondary{
    border:1px solid rgba(255,255,255,.15);
    color:#fff;
}

.attorney-btn-secondary:hover{
    background:#fff;
    color:#0A1128;
}

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

@media (max-width:991px){

    .attorney-hero{
        padding:140px 0 90px;
    }

    .attorney-card{
        padding:40px 24px;
        border-radius:24px;
    }

    .attorney-action-card{
        padding:50px 24px;
    }

    .attorney-scenario-card{
        padding:32px;
    }
}

@media (max-width:576px){

    .attorney-btn-primary,
    .attorney-btn-secondary{
        width:100%;
    }
}
/* ==========================
   COACHING HERO
========================== */

.coaching-hero{
    position:relative;
    overflow:hidden;
    padding:180px 0 120px;
    background:linear-gradient(135deg,#050b1c 0%,#0a1128 45%,#152a52 100%);
    color:#fff;
}

.coaching-hero-pattern{
    position:absolute;
    right:-120px;
    bottom:-120px;
    width:420px;
    height:420px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:50%;
}

.coaching-hero-badge{
    display:inline-block;
    padding:12px 20px;
    margin-bottom:30px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.12);
    font-size:.75rem;
    text-transform:uppercase;
    letter-spacing:.15em;
}

.coaching-hero-title{
    font-size:clamp(3rem,6vw,5.5rem);
    color:#fff;
    margin-bottom:24px;
}

.coaching-hero-text{
    max-width:760px;
    margin:0 auto;
    color:rgba(255,255,255,.78);
    line-height:1.9;
}

/* ==========================
   CONTENT
========================== */

.coaching-content{
    padding:100px 0 140px;
    background:#f6f4ef;
}

.coaching-card{
    background:#fff;
    padding:80px;
    border-radius:36px;
    box-shadow:0 35px 90px rgba(10,17,40,.08);
}

.coaching-highlight{
    padding:40px;
    background:#f8f4ee;
    border-left:4px solid #7C1B24;
    border-radius:0 24px 24px 0;
}

.coaching-highlight h2{
    margin-bottom:20px;
}

.coaching-section{
    margin-top:60px;
}

.coaching-section p{
    color:#556070;
    line-height:1.9;
    margin-bottom:24px;
}

.coaching-quote{
    margin:70px 0;
    padding:50px;
    background:#0A1128;
    border-radius:28px;
    text-align:center;
}

.coaching-quote p{
    color:#fff;
    font-size:1.75rem;
    line-height:1.5;
    font-style:italic;
    margin:0;
}

.coaching-proof{
    margin-top:80px;
}

.proof-card{
    height:100%;
    padding:36px;
    background:#f8f4ee;
    border-radius:24px;
}

.proof-number{
    display:inline-block;
    margin-bottom:20px;
    color:#7C1B24;
    font-size:2rem;
    font-weight:700;
}

.proof-card h3{
    margin-bottom:16px;
}

.proof-card p{
    color:#556070;
    line-height:1.8;
}

.coaching-alert{
    margin-top:70px;
    padding:40px;
    background:#fff8e6;
    border:1px solid #f0dfb3;
    border-radius:24px;
}

.coaching-alert h3{
    margin-bottom:16px;
}

/* ==========================
   CTA
========================== */

.coaching-action{
    padding:0 0 140px;
    background:#f6f4ef;
}

.coaching-action-card{
    padding:70px;
    background:#0A1128;
    border-radius:36px;
    text-align:center;
}

.coaching-action-card h2{
    color:#fff;
}

.coaching-action-card p{
    max-width:680px;
    margin:20px auto 40px;
    color:rgba(255,255,255,.78);
}

.coaching-action-buttons{
    display:flex;
    justify-content:center;
    gap:16px;
    flex-wrap:wrap;
}

.coaching-btn-primary,
.coaching-btn-secondary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:220px;
    padding:16px 28px;
    border-radius:999px;
    text-decoration:none;
    font-weight:700;
    transition:.3s;
}

.coaching-btn-primary{
    background:#7C1B24;
    color:#fff;
}

.coaching-btn-primary:hover{
    color:#fff;
    transform:translateY(-2px);
}

.coaching-btn-secondary{
    border:1px solid rgba(255,255,255,.15);
    color:#fff;
}

.coaching-btn-secondary:hover{
    background:#fff;
    color:#0A1128;
}

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

@media (max-width:991px){

    .coaching-hero{
        padding:140px 0 90px;
    }

    .coaching-card{
        padding:40px 24px;
        border-radius:24px;
    }

    .coaching-action-card{
        padding:50px 24px;
    }

    .coaching-quote{
        padding:32px;
    }

    .coaching-quote p{
        font-size:1.35rem;
    }
}

@media (max-width:576px){

    .coaching-btn-primary,
    .coaching-btn-secondary{
        width:100%;
    }
}

/* ==========================
   BOOK HERO
========================== */

.book-hero{
    padding:180px 0 120px;
    background:linear-gradient(135deg,#050b1c 0%,#0a1128 45%,#152a52 100%);
    color:#fff;
}

.book-cover{
    max-width:320px;
    border-radius:24px;
    box-shadow:0 30px 80px rgba(0,0,0,.35);
}

.book-badge{
    display:inline-block;
    padding:10px 18px;
    margin-bottom:24px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.12);
    font-size:.75rem;
    text-transform:uppercase;
    letter-spacing:.15em;
}

.book-title{
    font-size:clamp(3rem,6vw,3rem);
    color:#fff;
    margin-bottom:20px;
}

.book-subtitle{
    font-size:1.15rem;
    line-height:1.9;
    color:rgba(255,255,255,.8);
}

.book-highlight{
    margin:30px 0;
    padding:24px;
    background:rgba(124,27,36,.2);
    border-left:4px solid #7c1b24;
    border-radius:0 20px 20px 0;
}

.book-price{
    margin:30px 0;
    font-size:2rem;
    font-weight:700;
}

.book-price .amount{
    color:#fff;
}

.book-actions{
    display:flex;
    gap:16px;
    flex-wrap:wrap;
    align-items:center;
}

.book-btn-secondary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:14px 24px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:999px;
    color:#fff;
    text-decoration:none;
}

/* ==========================
   CONTENT
========================== */

.book-overview,
.book-reviews,
.book-purchase,
.book-related{
    padding:100px 0;
    background:#f6f4ef;
}

.book-card,
.book-purchase-card{
    background:#fff;
    border-radius:32px;
    padding:60px;
    box-shadow:0 25px 80px rgba(0,0,0,.08);
}

.book-card p{
    color:#556070;
    line-height:1.9;
}

.review-card{
    height:100%;
    padding:40px;
    background:#fff;
    border-radius:24px;
    box-shadow:0 15px 40px rgba(0,0,0,.06);
}

.review-card p{
    font-size:1.1rem;
    line-height:1.8;
    font-style:italic;
}

.review-card span{
    display:block;
    margin-top:24px;
    color:#7c1b24;
    font-weight:600;
}

.book-purchase-card address{
    font-style:normal;
    line-height:1.8;
    color:#556070;
}

.book-discount{
    max-width:140px;
}

.book-related .products{
    margin-top:40px;
}

/* ==========================
   WOOCOMMERCE
========================== */

.book-actions form.cart{
    display:flex;
    gap:12px;
    align-items:center;
    flex-wrap:wrap;
}

.book-actions .quantity input{
    width:90px;
    height:52px;
    border-radius:14px;
}

.book-actions .single_add_to_cart_button{
    height:52px;
    border:none;
    border-radius:999px;
    background:#7c1b24;
    padding:0 30px;
}

/* ==========================
   MOBILE
========================== */

@media(max-width:991px){

    .book-hero{
        padding:140px 0 90px;
        text-align:center;
    }

    .book-card,
    .book-purchase-card{
        padding:40px 24px;
    }

    .book-actions{
        justify-content:center;
    }
}

@media(max-width:576px){

    .book-actions{
        flex-direction:column;
    }

    .book-btn-secondary{
        width:100%;
    }

    .book-actions form.cart{
        width:100%;
        justify-content:center;
    }
}

.img-fluid {
    /* max-width: 100%; */
    height: 400px;
    width: 400px;
}

:root{
    --sample-primary:#7c1b24;
    --sample-dark:#0d1528;
    --sample-text:#334155;
    --sample-paper:#f9f7f2;
}

/* Progress Bar */

.chapter-progress{
    position:fixed;
    top:0;
    left:0;
    height:4px;
    width:0;
    background:linear-gradient(90deg,#7c1b24,#b53a47);
    z-index:9999;
}

/* Hero */

.sample-book-hero{
    position:relative;
    padding:180px 0 100px;
    background:linear-gradient(135deg,#08111f 0%,#132544 100%);
    color:#fff;
    overflow:hidden;
}

.hero-noise{
    position:absolute;
    inset:0;
    opacity:.05;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");
}

.sample-book-badge{
    display:inline-block;
    padding:10px 18px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    letter-spacing:.12em;
    text-transform:uppercase;
    font-size:.75rem;
    margin-bottom:24px;
}

.sample-book-title{
    font-size:clamp(3rem,6vw,5.5rem);
    margin-bottom:20px;
}

.sample-book-title em{
    color:#d8b36d;
    font-style:normal;
}

.sample-book-subtitle{
    font-size:1.35rem;
    opacity:.8;
}

.sample-book-meta{
    display:flex;
    justify-content:center;
    gap:18px;
    margin-top:32px;
    flex-wrap:wrap;
    color:rgba(255,255,255,.65);
}

.sample-book-meta .divider{
    width:1px;
    height:18px;
    background:rgba(255,255,255,.2);
}

/* Reading Area */

.sample-reader-layout{
    background:var(--sample-paper);
    padding:100px 0;
}

.sample-reader{
    background:#fff;
    border-radius:32px;
    padding:80px;
    box-shadow:0 25px 80px rgba(0,0,0,.08);
}

.chapter-content{
    font-size:1.15rem;
    line-height:2;
    color:var(--sample-text);
}

.chapter-content p{
    margin-bottom:2rem;
}

.chapter-content p::first-letter{
    float:left;
    font-size:4rem;
    line-height:1;
    margin-right:14px;
    color:var(--sample-primary);
    font-weight:700;
}

/* Intro */

.chapter-intro .lead{
    font-size:1.6rem;
    line-height:1.8;
    color:var(--sample-dark);
    margin-bottom:50px;
}

/* Quote */

.chapter-quote{
    position:relative;
    margin:60px 0;
    padding:50px;
    background:#f8f3f0;
    border-left:5px solid var(--sample-primary);
    border-radius:24px;
    font-size:1.6rem;
    line-height:1.8;
    font-style:italic;
    color:var(--sample-dark);
}

/* Scroll Animations */

.reveal{
    opacity:0;
    transform:translateY(40px);
    transition:all .8s ease;
}

.reveal.active{
    opacity:1;
    transform:none;
}

/* Floating CTA */

.sample-floating-cta{
    position:fixed;
    bottom:30px;
    right:30px;
    z-index:1000;
}

.cta-inner{
    display:flex;
    align-items:center;
    gap:20px;
    padding:18px 24px;
    background:#fff;
    border-radius:999px;
    box-shadow:0 20px 60px rgba(0,0,0,.15);
}

.cta-inner strong{
    display:block;
    color:var(--sample-dark);
}

.cta-inner span{
    font-size:.875rem;
    color:#64748b;
}

.sample-buy-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:14px 24px;
    background:var(--sample-primary);
    color:#fff;
    text-decoration:none;
    border-radius:999px;
}

/* Final CTA */

.sample-end-cta{
    padding:120px 0;
    background:#0d1528;
}

.sample-end-card{
    max-width:850px;
    margin:auto;
    text-align:center;
    color:#fff;
}

.sample-end-card h2{
    font-size:3rem;
    margin-bottom:20px;
}

.sample-end-card p{
    opacity:.8;
    margin-bottom:40px;
}

.sample-end-actions{
    display:flex;
    justify-content:center;
    gap:20px;
    flex-wrap:wrap;
}

.sample-btn-primary,
.sample-btn-secondary{
    padding:16px 34px;
    border-radius:999px;
    text-decoration:none;
}

.sample-btn-primary{
    background:#7c1b24;
    color:#fff;
}

.sample-btn-secondary{
    border:1px solid rgba(255,255,255,.2);
    color:#fff;
}

/* Mobile */

@media (max-width: 991px){

    .sample-reader{
        padding:40px 30px;
    }

    .sample-floating-cta{
        left:15px;
        right:15px;
        bottom:15px;
    }

    .cta-inner{
        width:100%;
        justify-content:space-between;
    }
}

@media (max-width: 576px){

    .sample-book-hero{
        padding:140px 0 80px;
    }

    .sample-reader{
        padding:32px 24px;
    }

    .chapter-content{
        font-size:1rem;
    }

    .chapter-content p::first-letter{
        font-size:3rem;
    }

    .chapter-quote{
        padding:30px;
        font-size:1.2rem;
    }
}

.chapter-callout{
    margin:3rem 0;
    padding:2rem;
    background:#f8f3f0;
    border-left:4px solid #7c1b24;
    border-radius:0 20px 20px 0;
}
/* ══════════════════════════════════════════
   PROGRESS BAR
══════════════════════════════════════════ */
.chapter-progress {
    position: fixed;
    top: 0;
    left: 0;
    height: 3px;
    width: 0;
    background: linear-gradient(90deg, #7c1b24, #b53a47);
    z-index: 9999;
    transition: width .1s linear
}

/* ══════════════════════════════════════════
   HERO
══════════════════════════════════════════ */
.sample-book-hero {
    position: relative;
    padding: 180px 0 100px;
    background: linear-gradient(135deg, #08111f 0%, #132544 100%);
    color: #fdfbf7;
    overflow: hidden
}

.hero-noise {
    position: absolute;
    inset: 0;
    opacity: .05;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");
    pointer-events: none
}

.sample-book-badge {
    display: inline-block;
    padding: 10px 18px;
    margin-bottom: 28px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .12);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: rgba(253, 251, 247, .72)
}

.sample-book-title {
    font-family: "Cormorant Garamond", serif;
    font-size: clamp(3rem, 6vw, 5.5rem);
    line-height: .95;
    letter-spacing: -.04em;
    color: #fdfbf7;
    margin-bottom: 20px
}

.sample-book-title em {
    font-style: italic;
    color: #d4af37
}

.sample-book-subtitle {
    max-width: 680px;
    margin: 0 auto 32px;
    font-size: 1.15rem;
    line-height: 1.85;
    color: rgba(253, 251, 247, .72)
}

.sample-book-meta {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    flex-wrap: wrap;
    font-size: .78rem;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: rgba(253, 251, 247, .45)
}

.sample-book-meta .divider {
    width: 1px;
    height: 14px;
    background: rgba(255, 255, 255, .2);
    pointer-events: none
}

@media (max-width: 991px) {
    .sample-book-hero {
        padding: 150px 0 80px
    }
}

@media (max-width: 767px) {
    .sample-book-hero {
        padding: 120px 0 70px
    }
}

/* ══════════════════════════════════════════
   READER LAYOUT
══════════════════════════════════════════ */
.sample-reader-layout {
    padding: 100px 0 140px;
    background: linear-gradient(to bottom, #fdfbf7 0, #f5f0e8 100%)
}

/* ── STICKY SIDEBAR ── */
.chapter-nav.sticky-nav {
    position: sticky;
    top: 2rem;
    padding: 28px 24px 32px;
    background: #fff;
    border-radius: 24px;
    border: 1px solid rgba(10, 17, 40, .06);
    box-shadow: 0 20px 60px rgba(10, 17, 40, .05)
}

.chapter-nav h6 {
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: rgba(10, 17, 40, .45);
    margin: 0 0 18px;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(10, 17, 40, .08)
}

.chapter-nav nav {
    display: flex;
    flex-direction: column;
    gap: 2px
}

.chapter-nav nav a {
    font-size: .82rem;
    color: #3b4252;
    text-decoration: none;
    padding: 8px 10px;
    border-radius: 12px;
    border-left: 2px solid transparent;
    transition: .3s;
    line-height: 1.45
}

.chapter-nav nav a:hover {
    color: #7c1b24;
    background: rgba(124, 27, 36, .06);
    border-left-color: #7c1b24;
    padding-left: 14px
}

.chapter-nav nav a.active {
    color: #7c1b24;
    border-left-color: #7c1b24;
    background: rgba(124, 27, 36, .06);
    font-weight: 600
}

/* ── ARTICLE SHELL ── */
.sample-reader {
    background: #fff;
    border-radius: 32px;
    padding: 80px;
    box-shadow: 0 25px 80px rgba(10, 17, 40, .08);
    border: 1px solid rgba(10, 17, 40, .04)
}

/* ── CHAPTER INTRO ── */
.chapter-intro {
    margin-bottom: 56px;
    padding-bottom: 40px;
    border-bottom: 1px solid rgba(10, 17, 40, .08)
}

.chapter-intro .lead {
    font-family: "Cormorant Garamond", serif;
    font-size: 1.55rem;
    line-height: 1.75;
    color: #0a1128;
    margin-bottom: 16px
}

.chapter-intro p:last-child {
    font-size: .9rem;
    line-height: 1.7;
    color: rgba(10, 17, 40, .52)
}

/* ── SECTION BLOCKS ── */
.chapter-block {
    margin-bottom: 56px
}

.chapter-block h2 {
    font-family: "Cormorant Garamond", serif;
    font-size: clamp(2rem, 3.5vw, 2.6rem);
    line-height: 1.05;
    letter-spacing: -.03em;
    color: #0a1128;
    margin: 0 0 28px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(10, 17, 40, .08)
}

.chapter-block h3 {
    font-family: "Cormorant Garamond", serif;
    font-size: 1.5rem;
    line-height: 1.2;
    font-style: italic;
    color: #3b4252;
    margin: 40px 0 20px
}

/* ── BODY COPY ── */
.chapter-block p,
.chapter-content p {
    font-size: 1.06rem;
    line-height: 2;
    color: #3b4252;
    margin: 0 0 1.6rem;
    max-width: 72ch
}

.chapter-block ol {
    padding-left: 1.4rem;
    margin: 0 0 1.6rem;
    max-width: 72ch
}

.chapter-block ol li {
    font-size: 1rem;
    line-height: 1.8;
    color: #3b4252;
    margin-bottom: .5rem
}

/* ── PULL QUOTES ── */
.chapter-quote {
    position: relative;
    margin: 56px 0;
    padding: 48px 52px 48px 64px;
    background: #f8f4ee;
    border-radius: 28px;
    border: 1px solid rgba(10, 17, 40, .06);
    font-family: "Cormorant Garamond", serif;
    font-size: clamp(1.2rem, 2.5vw, 1.6rem);
    line-height: 1.65;
    font-style: italic;
    color: #0a1128
}

.chapter-quote::before {
    content: "\201C";
    position: absolute;
    left: 16px;
    top: 10px;
    font-size: 5rem;
    line-height: 1;
    color: rgba(124, 27, 36, .15);
    font-family: "Cormorant Garamond", serif;
    pointer-events: none
}

.chapter-quote cite {
    display: block;
    margin-top: 18px;
    font-family: system-ui, sans-serif;
    font-style: normal;
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: #7c1b24
}

.chapter-quote--final {
    background: #0a1128;
    border-color: transparent;
    color: #fdfbf7;
    text-align: center;
    padding-left: 52px;
    margin-top: 70px
}

.chapter-quote--final::before {
    color: rgba(253, 251, 247, .12)
}

/* ── INLINE WITNESS QUOTES ── */
.inline-quote {
    position: relative;
    padding: 28px 30px 28px 36px;
    margin: 32px 0;
    background: rgba(124, 27, 36, .04);
    border-left: 3px solid #7c1b24;
    border-radius: 0 20px 20px 0
}

.inline-quote p {
    font-size: .98rem !important;
    line-height: 1.85 !important;
    font-style: italic;
    color: #0a1128 !important;
    margin: 0 0 .4rem !important;
    max-width: 100% !important
}

.inline-quote cite {
    display: block;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: #7c1b24;
    margin-top: 10px
}

/* ── EXPERT CALLOUT ── */
.chapter-callout {
    margin: 40px 0;
    padding: 36px 40px;
    background: #f8f4ee;
    border-left: 4px solid #d4af37;
    border-radius: 0 24px 24px 0
}

.chapter-callout p {
    font-size: .97rem !important;
    font-style: italic;
    line-height: 1.85 !important;
    color: #3b4252 !important;
    margin: 0 0 1rem !important;
    max-width: 100% !important
}

.chapter-callout p:last-of-type {
    margin-bottom: 0 !important
}

.chapter-callout .callout-attribution {
    display: block;
    font-family: system-ui, sans-serif;
    font-style: normal !important;
    font-size: .72rem !important;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: rgba(10, 17, 40, .45) !important;
    margin-top: 18px !important;
    padding-top: 14px;
    border-top: 1px solid rgba(10, 17, 40, .08)
}

.chapter-callout--disclaimer {
    background: rgba(10, 17, 40, .03);
    border-left-color: rgba(10, 17, 40, .15);
    border-radius: 20px;
    border-left-width: 1px;
    padding: 24px 30px;
    margin-top: 56px
}

.chapter-callout--disclaimer,
.chapter-callout--disclaimer p {
    font-style: normal !important;
    font-size: .82rem !important;
    color: rgba(10, 17, 40, .52) !important
}

.chapter-callout--disclaimer strong {
    color: #0a1128
}

/* ══════════════════════════════════════════
   SCROLL REVEAL
══════════════════════════════════════════ */
.reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .6s ease, transform .6s ease
}

.reveal.active {
    opacity: 1;
    transform: none
}

@media (prefers-reduced-motion: reduce) {
    .reveal {
        opacity: 1;
        transform: none
    }
}

/* ══════════════════════════════════════════
   FLOATING CTA
══════════════════════════════════════════ */
.sample-floating-cta {
    position: fixed;
    bottom: 28px;
    right: 28px;
    z-index: 500
}

.cta-inner {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 16px 16px 16px 22px;
    background: #0a1128;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .08);
    box-shadow: 0 20px 60px rgba(10, 17, 40, .2)
}

.cta-copy {
    display: flex;
    flex-direction: column
}

.cta-copy strong {
    font-size: .82rem;
    font-weight: 700;
    color: #fdfbf7;
    line-height: 1.3
}

.cta-copy span {
    font-size: .72rem;
    color: rgba(253, 251, 247, .5)
}

.sample-buy-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 22px;
    background: #7c1b24;
    color: #fdfbf7;
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-decoration: none;
    border-radius: 999px;
    white-space: nowrap;
    transition: .35s
}

.sample-buy-btn:hover {
    background: #96232e;
    color: #fdfbf7;
    transform: scale(1.03)
}

/* ══════════════════════════════════════════
   END CTA SECTION
══════════════════════════════════════════ */
.sample-end-cta {
    padding: 140px 0;
    background: linear-gradient(180deg, #1e2a3f 0, #0a1128 100%)
}

.sample-end-card {
    position: relative;
    padding: 80px 60px;
    border-radius: 32px;
    background: linear-gradient(135deg, rgba(255, 255, 255, .04), rgba(255, 255, 255, .02));
    border: 1px solid rgba(253, 251, 247, .08);
    text-align: center;
    overflow: hidden
}

.sample-end-card::before {
    content: "";
    position: absolute;
    top: -180px;
    right: -180px;
    width: 460px;
    height: 460px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(124, 27, 36, .22), transparent 70%);
    pointer-events: none
}

.sample-end-card h2 {
    font-family: "Cormorant Garamond", serif;
    font-size: clamp(2.2rem, 4vw, 3.4rem);
    line-height: .95;
    letter-spacing: -.04em;
    color: #fdfbf7;
    margin: 0 0 20px
}

.sample-end-card p {
    max-width: 620px;
    margin: 0 auto 40px;
    font-size: 1rem;
    line-height: 1.85;
    color: rgba(253, 251, 247, .65)
}

.sample-end-actions {
    display: flex;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap
}

.sample-btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 56px;
    padding: 0 34px;
    border-radius: 999px;
    background: #7c1b24;
    color: #fdfbf7;
    font-size: .9rem;
    font-weight: 700;
    text-decoration: none;
    letter-spacing: .06em;
    transition: .35s
}

.sample-btn-primary:hover {
    background: #96232e;
    color: #fdfbf7;
    transform: translateY(-2px);
    box-shadow: 0 14px 36px rgba(124, 27, 36, .32)
}

.sample-btn-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 56px;
    padding: 0 32px;
    border-radius: 999px;
    border: 1px solid rgba(253, 251, 247, .18);
    background: rgba(255, 255, 255, .05);
    color: #fdfbf7;
    font-size: .9rem;
    font-weight: 600;
    text-decoration: none;
    backdrop-filter: blur(10px);
    transition: .35s
}

.sample-btn-secondary:hover {
    background: rgba(255, 255, 255, .12);
    color: #fdfbf7;
    transform: translateY(-2px)
}

/* ══════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════ */
@media (max-width: 991px) {
    .sample-reader-layout {
        padding: 70px 0 100px
    }

    .sample-reader {
        padding: 50px 40px
    }

    .sample-end-cta {
        padding: 100px 0
    }

    .sample-end-card {
        padding: 60px 40px
    }
}

@media (max-width: 767px) {
    .sample-reader-layout {
        padding: 50px 0 80px
    }

    .sample-reader {
        padding: 36px 24px;
        border-radius: 24px
    }

    .chapter-intro .lead {
        font-size: 1.25rem
    }

    .chapter-block h2 {
        font-size: 1.8rem
    }

    .chapter-block p,
    .chapter-content p {
        font-size: 1rem
    }

    .chapter-quote {
        padding: 36px 30px 36px 44px;
        font-size: 1.15rem;
        border-radius: 20px
    }

    .chapter-callout {
        padding: 28px 24px
    }

    .sample-floating-cta {
        left: 14px;
        right: 14px;
        bottom: 14px
    }

    .cta-inner {
        border-radius: 20px;
        justify-content: space-between
    }

    .sample-end-cta {
        padding: 80px 0
    }

    .sample-end-card {
        padding: 50px 28px;
        border-radius: 24px
    }

    .sample-btn-primary,
    .sample-btn-secondary {
        width: 100%
    }
}

/* ==========================================================
   ELUSIVE INNOCENCE PAGE
========================================================== */

:root{
    --ei-primary:#7c1b24;
    --ei-primary-dark:#62141b;
    --ei-gold:#d4af37;
    --ei-dark:#0a1128;
    --ei-text:#465066;
    --ei-light:#fdfbf7;
    --ei-border:rgba(10,17,40,.08);
}

/* ==========================================================
   HERO
========================================================== */

.ei-hero{
    position:relative;
    padding:140px 0 100px;
    background:linear-gradient(135deg,#08111f 0%,#132544 100%);
    overflow:hidden;
}

.ei-hero::before{
    content:"";
    position:absolute;
    inset:0;
    opacity:.04;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

.ei-book-cover{
    position:relative;
    text-align:center;
}

.ei-book-cover img{
    max-width:280px;
    border-radius:18px;
    box-shadow:0 30px 80px rgba(0,0,0,.35);
    transition:.4s ease;
}

.ei-book-cover img:hover{
    transform:translateY(-8px);
}

.ei-overline{
    display:inline-block;
    margin-bottom:1.5rem;
    color:rgba(255,255,255,.65);
    text-transform:uppercase;
    letter-spacing:.18em;
    font-size:.75rem;
    font-weight:700;
}

.ei-hero h1{
    color:#fff;
    font-family:"Cormorant Garamond",serif;
    font-size:clamp(3rem,6vw,5rem);
    line-height:.95;
    margin-bottom:1rem;
}

.ei-hero h2{
    color:var(--ei-gold);
    font-family:"Cormorant Garamond",serif;
    font-size:clamp(1.8rem,3vw,2.5rem);
    margin-bottom:1.75rem;
}

.ei-hero .lead{
    color:rgba(255,255,255,.78);
    font-size:1.1rem;
    line-height:1.9;
    max-width:650px;
}

.ei-badges{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin:2rem 0;
}

.ei-badges span{
    padding:10px 18px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.12);
    color:#fff;
    font-size:.8rem;
}

.ei-actions{
    display:flex;
    flex-wrap:wrap;
    gap:16px;
    margin-top:2rem;
}

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

.ei-btn-primary,
.ei-btn-outline,
.ei-download-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:56px;
    padding:0 32px;
    border-radius:999px;
    text-decoration:none;
    font-weight:700;
    transition:.3s ease;
}

.ei-btn-primary{
    background:var(--ei-primary);
    color:#fff;
}

.ei-btn-primary:hover{
    background:var(--ei-primary-dark);
    color:#fff;
    transform:translateY(-2px);
}

.ei-btn-outline{
    border:1px solid rgba(255,255,255,.2);
    color:#fff;
    background:rgba(255,255,255,.04);
}

.ei-btn-outline:hover{
    background:rgba(255,255,255,.12);
    color:#fff;
}

.ei-download-btn{
    background:var(--ei-dark);
    color:#fff;
}

.ei-download-btn:hover{
    background:var(--ei-primary);
    color:#fff;
}

/* ==========================================================
   REVIEW
========================================================== */

.ei-review{
    padding:100px 0;
    background:#f5f0e8;
}

.ei-review-card{
    position:relative;
    max-width:900px;
    margin:auto;
    background:#fff;
    padding:4rem;
    border-radius:32px;
    box-shadow:0 25px 70px rgba(0,0,0,.06);
    text-align:center;
}

.quote-mark{
    position:absolute;
    top:20px;
    left:40px;
    font-size:7rem;
    line-height:1;
    color:rgba(124,27,36,.08);
    font-family:"Cormorant Garamond",serif;
}

.ei-review-card p{
    font-size:1.15rem;
    line-height:2;
    color:var(--ei-text);
    margin-bottom:2rem;
}

.ei-review-card h5{
    color:var(--ei-dark);
    margin-bottom:.3rem;
}

.ei-review-card span{
    color:var(--ei-primary);
    font-size:.9rem;
    letter-spacing:.08em;
    text-transform:uppercase;
}

/* ==========================================================
   CONTENT
========================================================== */

.ei-content{
    padding:100px 0;
    background:#fff;
}

.ei-content-card{
    background:#fff;
    border:1px solid var(--ei-border);
    border-radius:32px;
    padding:4rem;
    box-shadow:0 20px 50px rgba(10,17,40,.05);
}

.ei-content-card h2{
    font-family:"Cormorant Garamond",serif;
    font-size:3rem;
    color:var(--ei-dark);
    margin-bottom:2rem;
}

.ei-content-card p{
    color:var(--ei-text);
    line-height:2;
    margin-bottom:1.5rem;
}

/* ==========================================================
   LAW REVIEW
========================================================== */

.ei-law-review{
    padding:80px 0;
    background:#f8f4ee;
    border-top:1px solid var(--ei-border);
    border-bottom:1px solid var(--ei-border);
}

.ei-law-review h2{
    color:var(--ei-dark);
    margin-bottom:1rem;
}

.ei-law-review p{
    color:var(--ei-text);
    margin:0;
}

/* ==========================================================
   PRODUCT
========================================================== */

.ei-product-section{
    padding:120px 0;
    background:#fff;
}

.section-heading{
    margin-bottom:4rem;
}

.section-heading span{
    display:block;
    text-transform:uppercase;
    letter-spacing:.18em;
    font-size:.75rem;
    color:var(--ei-primary);
    margin-bottom:1rem;
}

.section-heading h2{
    font-family:"Cormorant Garamond",serif;
    font-size:3rem;
    color:var(--ei-dark);
}

.ei-product-card{
    background:#fff;
    border:1px solid var(--ei-border);
    border-radius:32px;
    padding:3rem;
    box-shadow:0 25px 60px rgba(10,17,40,.05);
}

.ei-product-card img{
    border-radius:18px;
}

.ei-product-card h3{
    color:var(--ei-dark);
    margin-bottom:1rem;
}

.ei-product-card .price{
    color:var(--ei-primary);
    font-size:1.5rem;
    font-weight:700;
    margin-bottom:1rem;
}

.ei-product-card p{
    color:var(--ei-text);
    line-height:1.9;
}

/* ==========================================================
   RELATED PRODUCTS
========================================================== */

.ei-related-products{
    padding:120px 0;
    background:#f8f4ee;
}

.ei-related-card{
    height:100%;
    background:#fff;
    border-radius:24px;
    padding:1.75rem;
    text-align:center;
    border:1px solid var(--ei-border);
    transition:.35s ease;
}

.ei-related-card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 50px rgba(10,17,40,.08);
}

.ei-related-card a{
    text-decoration:none;
}

.ei-related-card img{
    margin-bottom:1.5rem;
    border-radius:12px;
}

.ei-related-card h5{
    color:var(--ei-dark);
    font-size:1rem;
}

/* ==========================================================
   FINAL CTA
========================================================== */

.ei-final-cta{
    padding:120px 0;
    background:linear-gradient(180deg,#1a2538 0%,#0a1128 100%);
}

.ei-final-card{
    max-width:900px;
    margin:auto;
    padding:5rem;
    text-align:center;
    border-radius:32px;
    background:rgba(255,255,255,.03);
    border:1px solid rgba(255,255,255,.08);
}

.ei-final-card h2{
    font-family:"Cormorant Garamond",serif;
    color:#fff;
    font-size:3rem;
    margin-bottom:1.5rem;
}

.ei-final-card p{
    color:rgba(255,255,255,.7);
    line-height:1.9;
    margin-bottom:2rem;
}

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

@media (max-width:991px){

    .ei-hero{
        padding:120px 0 80px;
        text-align:center;
    }

    .ei-book-cover{
        margin-bottom:2rem;
    }

    .ei-badges,
    .ei-actions{
        justify-content:center;
    }

    .ei-review-card,
    .ei-content-card,
    .ei-product-card,
    .ei-final-card{
        padding:2.5rem;
    }

    .ei-law-review{
        text-align:center;
    }

    .ei-download-btn{
        margin-top:2rem;
    }
}

@media (max-width:767px){

    .ei-hero h1{
        font-size:2.8rem;
    }

    .ei-hero h2,
    .section-heading h2,
    .ei-content-card h2,
    .ei-final-card h2{
        font-size:2rem;
    }

    .ei-review-card,
    .ei-content-card,
    .ei-product-card,
    .ei-final-card{
        padding:2rem;
        border-radius:24px;
    }

    .ei-btn-primary,
    .ei-btn-outline,
    .ei-download-btn{
        width:100%;
    }

    .ei-actions{
        flex-direction:column;
    }

    .quote-mark{
        display:none;
    }
}

:root{
    --ata-primary:#7c1b24;
    --ata-gold:#d4af37;
    --ata-dark:#0a1128;
    --ata-text:#556070;
    --ata-bg:#f8f4ee;
}

.ata-hero{
    position:relative;
    padding:180px 0 120px;
    background:linear-gradient(135deg,#08111f 0%,#132544 100%);
    overflow:hidden;
}

.ata-hero-bg{
    position:absolute;
    inset:0;
    opacity:.05;
    background-image:radial-gradient(circle,#fff 1px,transparent 1px);
    background-size:24px 24px;
}

.ata-book-cover img{
    max-width:320px;
    border-radius:20px;
    box-shadow:0 30px 80px rgba(0,0,0,.35);
    transition:.4s;
}

.ata-book-cover:hover img{
    transform:translateY(-10px);
}

.ata-overline{
    display:inline-block;
    color:rgba(255,255,255,.65);
    text-transform:uppercase;
    letter-spacing:.15em;
    margin-bottom:1rem;
    font-size:.75rem;
}

.ata-hero h1{
    color:#fff;
    font-size:clamp(3rem,6vw,5rem);
    line-height:1;
    margin-bottom:.5rem;
}

.ata-hero h2{
    color:var(--ata-gold);
    font-size:clamp(2rem,4vw,3rem);
    margin-bottom:1.5rem;
}

.ata-subtitle{
    color:rgba(255,255,255,.8);
    font-size:1.1rem;
    line-height:1.9;
}

.ata-status{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin:2rem 0;
}

.ata-badge{
    padding:10px 18px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    color:#fff;
}

.ata-badge-warning{
    background:rgba(212,175,55,.15);
    color:var(--ata-gold);
}

.ata-actions{
    display:flex;
    gap:16px;
    flex-wrap:wrap;
}

.ata-btn-primary,
.ata-btn-secondary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:54px;
    padding:0 32px;
    border-radius:999px;
    text-decoration:none;
    transition:.3s;
}

.ata-btn-primary{
    background:var(--ata-primary);
    color:#fff;
}

.ata-btn-primary:hover{
    background:#65141c;
    color:#fff;
    transform:translateY(-2px);
}

.ata-btn-secondary{
    border:1px solid rgba(255,255,255,.2);
    color:#fff;
}

.ata-intro,
.ata-product,
.ata-mail-order{
    padding:110px 0;
}

.ata-reviews,
.ata-related{
    padding:110px 0;
    background:var(--ata-bg);
}

.section-heading{
    margin-bottom:4rem;
}

.section-heading span{
    color:var(--ata-primary);
    text-transform:uppercase;
    letter-spacing:.15em;
    font-size:.75rem;
}

.section-heading h2{
    color:var(--ata-dark);
    font-size:3rem;
    margin-top:1rem;
}

.ata-content-card,
.ata-product-card,
.ata-mail-card,
.ata-review-card{
    background:#fff;
    border-radius:28px;
    padding:3rem;
    box-shadow:0 20px 60px rgba(0,0,0,.06);
}

.ata-content-card p,
.ata-product-card p{
    color:var(--ata-text);
    line-height:1.9;
}

.ata-review-card{
    height:100%;
}

.ata-review-card p{
    color:var(--ata-text);
    line-height:1.9;
    font-style:italic;
}

.ata-reviewer{
    margin-top:2rem;
    font-weight:700;
    color:var(--ata-dark);
}

.ata-reviewer span{
    display:block;
    color:var(--ata-primary);
    font-size:.875rem;
    margin-top:.25rem;
}

.ata-product-card .price{
    color:var(--ata-primary);
    font-size:1.75rem;
    font-weight:700;
    margin:1rem 0;
}

.ata-discount{
    max-width:120px;
}

.reveal{
    opacity:0;
    transform:translateY(40px);
    transition:all .8s ease;
}

.reveal.active{
    opacity:1;
    transform:none;
}

@media(max-width:991px){

    .ata-hero{
        padding:140px 0 90px;
        text-align:center;
    }

    .ata-status,
    .ata-actions{
        justify-content:center;
    }

    .ata-content-card,
    .ata-product-card,
    .ata-mail-card,
    .ata-review-card{
        padding:2rem;
    }
}

@media(max-width:576px){

    .ata-btn-primary,
    .ata-btn-secondary{
        width:100%;
    }

    .ata-actions{
        flex-direction:column;
    }

    .section-heading h2{
        font-size:2.2rem;
    }
}

```css
.books-hero{
    position:relative;
    overflow:hidden;
}

.hero-pattern{
    position:absolute;
    inset:0;
    opacity:.04;
    background-image:
        radial-gradient(circle,#fff 1px,transparent 1px);
    background-size:24px 24px;
}

.books-premium{
    padding:120px 0;
    background:#f7f3ee;
}

.book-item{
    padding:4rem;
    margin-bottom:4rem;
    background:#fff;
    border-radius:32px;
    box-shadow:0 30px 80px rgba(10,17,40,.08);
    position:relative;
    overflow:hidden;
}

.book-item::before{
    content:'';
    position:absolute;
    top:0;
    right:0;
    width:240px;
    height:240px;
    background:radial-gradient(
        circle,
        rgba(124,27,36,.08),
        transparent 70%
    );
}

.book-cover{
    text-align:center;
}

.book-cover img{
    max-height:520px;
    border-radius:18px;
    box-shadow:0 25px 60px rgba(0,0,0,.18);
    transition:all .4s ease;
}

.book-item:hover .book-cover img{
    transform:translateY(-10px);
}

.book-badge{
    display:inline-flex;
    align-items:center;
    padding:.65rem 1rem;
    border-radius:999px;
    font-size:.75rem;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    margin-bottom:1.5rem;
}

.book-badge.available{
    background:#eaf8ef;
    color:#127a41;
}

.book-badge.archive{
    background:#fff4dd;
    color:#a06a00;
}

.book-volume{
    color:#7c1b24;
    font-size:.85rem;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.book-copy h2{
    color:#0a1128;
    font-size:clamp(2.4rem,4vw,4rem);
    margin-bottom:.5rem;
}

.book-copy h3{
    color:#d4af37;
    font-size:1.4rem;
    margin-bottom:1.5rem;
}

.book-copy p:last-of-type{
    color:#556070;
    line-height:1.9;
    font-size:1.05rem;
}

.book-actions{
    margin-top:2rem;
}

.btn-book{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:56px;
    padding:0 2rem;
    border-radius:999px;
    background:#7c1b24;
    color:#fff;
    text-decoration:none;
    font-weight:600;
    transition:all .3s ease;
}

.btn-book:hover{
    background:#5f141c;
    color:#fff;
    transform:translateY(-3px);
}

.archive-strip{
    padding:120px 0;
    background:linear-gradient(135deg,#08111f,#132544);
}

.archive-title{
    color:#fff;
    font-size:clamp(2rem,4vw,3.5rem);
    margin-bottom:1.5rem;
}

.archive-label{
    color:#d4af37;
    text-transform:uppercase;
    letter-spacing:.18em;
    font-size:.8rem;
}

.archive-text{
    max-width:760px;
    margin:0 auto;
    color:rgba(255,255,255,.8);
    line-height:1.9;
}

.peer-review{
    padding:120px 0;
    background:#fff;
}

.peer-inner{
    max-width:900px;
    margin:0 auto;
}

.peer-label{
    color:#7c1b24;
    text-transform:uppercase;
    letter-spacing:.15em;
    font-size:.8rem;
    margin-bottom:2rem;
}

.peer-quote{
    position:relative;
    color:#0a1128;
    font-size:clamp(1.5rem,2.2vw,2.25rem);
    line-height:1.7;
    font-style:italic;
}

.peer-quote::before{
    content:'“';
    position:absolute;
    left:-30px;
    top:-50px;
    color:rgba(124,27,36,.1);
    font-size:8rem;
}

.reveal{
    opacity:0;
    transform:translateY(40px);
    transition:all .8s ease;
}

.reveal.active{
    opacity:1;
    transform:translateY(0);
}

@media(max-width:991px){

    .books-premium{
        padding:80px 0;
    }

    .book-item{
        padding:2rem;
    }

    .book-copy{
        text-align:center;
    }

    .book-cover img{
        max-height:420px;
    }

    .peer-quote::before{
        display:none;
    }
}

@media(max-width:576px){

    .book-copy h2{
        font-size:2rem;
    }

    .btn-book{
        width:100%;
    }

    .book-cover img{
        max-height:320px;
    }
}

.featured-book{
    position:relative;
    border:1px solid rgba(212,175,55,.25);
    background:
        linear-gradient(
            135deg,
            rgba(212,175,55,.06),
            rgba(255,255,255,1) 35%
        );
}

.featured-book::after{
    content:'NEW';
    position:absolute;
    top:24px;
    right:-42px;
    background:#d4af37;
    color:#08111f;
    font-size:.75rem;
    font-weight:800;
    letter-spacing:.15em;
    padding:.75rem 3rem;
    transform:rotate(45deg);
    box-shadow:0 8px 20px rgba(0,0,0,.15);
}

.book-badge.coming-soon{
    background:#eef2ff;
    color:#4338ca;
}

.book-purchase-note{
    margin-top:1rem;
    color:#7c1b24;
    font-weight:600;
}

.btn-book-outline{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:56px;
    padding:0 2rem;
    border:1px solid #7c1b24;
    border-radius:999px;
    background:transparent;
    color:#7c1b24;
    text-decoration:none;
    font-weight:600;
    transition:all .3s ease;
}

.btn-book-outline:hover{
    background:#7c1b24;
    color:#fff;
    transform:translateY(-3px);
}

.featured-book .book-cover img{
    max-height:580px;
    animation:floatBook 6s ease-in-out infinite;
}

@keyframes floatBook{

    0%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-12px);
    }

    100%{
        transform:translateY(0);
    }
}

@media(max-width:991px){

    .featured-book::after{
        display:none;
    }

    .book-actions{
        flex-direction:column;
    }

    .btn-book,
    .btn-book-outline{
        width:100%;
    }
}

```css
.dt-library-showcase{
    position:relative;
    padding:8rem 0;
    background:
        radial-gradient(circle at top right,
        rgba(212,175,55,.08),
        transparent 30%),
        #f5f2eb;
    overflow:hidden;
}

.dt-library-header{
    margin-bottom:4rem;
}

.dt-library-overline{
    color:#7c1b24;
    text-transform:uppercase;
    letter-spacing:.18em;
    font-size:.8rem;
    font-weight:700;
}

.dt-library-heading{
    color:#08111f;
    font-size:clamp(2.5rem,4vw,4.5rem);
    margin:1rem 0;
}

.dt-library-intro{
    color:#5b6676;
    max-width:720px;
    line-height:1.9;
}

.dt-library-cta{
    display:inline-flex;
    align-items:center;
    gap:.75rem;
    padding:1rem 2rem;
    border-radius:999px;
    background:#7c1b24;
    color:#fff;
    text-decoration:none;
    font-weight:600;
    transition:all .35s ease;
}

.dt-library-cta:hover{
    background:#5c141b;
    color:#fff;
    transform:translateY(-3px);
}

.dt-library-carousel{
    overflow:visible;
    padding-bottom:5rem;
}

.dt-library-card{
    display:flex;
    flex-direction:column;
    height:100%;
    background:#fff;
    border-radius:30px;
    overflow:hidden;
    text-decoration:none;
    box-shadow:0 24px 60px rgba(0,0,0,.08);
    transition:all .45s ease;
}

.dt-library-card:hover{
    transform:translateY(-12px);
    box-shadow:0 35px 90px rgba(0,0,0,.14);
}

.dt-library-visual{
    position:relative;
    display:flex;
    justify-content:center;
    align-items:center;
    min-height:420px;
    padding:2.5rem;
    background:linear-gradient(135deg,#08111f,#132544);
}

.dt-library-visual::before{
    content:'';
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at top right,
        rgba(212,175,55,.22),
        transparent 50%);
}

.dt-library-visual img{
    position:relative;
    z-index:2;
    max-height:340px;
    width:auto;
    filter:drop-shadow(0 24px 35px rgba(0,0,0,.35));
    transition:transform .5s ease;
}

.dt-library-card:hover .dt-library-visual img{
    transform:translateY(-10px) scale(1.03);
}

.dt-library-flag{
    position:absolute;
    top:20px;
    right:-40px;
    z-index:4;
    background:#d4af37;
    color:#08111f;
    padding:.75rem 3rem;
    transform:rotate(45deg);
    font-size:.7rem;
    font-weight:800;
    letter-spacing:.18em;
}

.dt-library-copy{
    display:flex;
    flex-direction:column;
    flex-grow:1;
    padding:2rem;
}

.dt-library-meta{
    display:flex;
    gap:.75rem;
    flex-wrap:wrap;
    margin-bottom:1rem;
}

.dt-library-year{
    color:#7c1b24;
    font-size:.85rem;
    font-weight:700;
    letter-spacing:.15em;
}

.dt-library-status{
    background:rgba(212,175,55,.14);
    color:#b58b1c;
    padding:.4rem .85rem;
    border-radius:999px;
    font-size:.72rem;
    font-weight:700;
    text-transform:uppercase;
}

.dt-library-copy h3{
    color:#08111f;
    font-size:2rem;
    margin-bottom:.75rem;
}

.dt-library-copy h4{
    color:#7c1b24;
    font-size:1.1rem;
    line-height:1.6;
    margin-bottom:1rem;
}

.dt-library-copy p{
    color:#5b6676;
    line-height:1.85;
    margin-bottom:auto;
}

.dt-library-link{
    margin-top:2rem;
    color:#08111f;
    font-weight:700;
    transition:all .3s ease;
}

.dt-library-card:hover .dt-library-link{
    color:#7c1b24;
}

.dt-library-nav-prev,
.dt-library-nav-next{
    position:absolute;
    bottom:0;
    width:60px;
    height:60px;
    border-radius:50%;
    background:#fff;
    box-shadow:0 12px 30px rgba(0,0,0,.12);
    cursor:pointer;
    z-index:5;
}

.dt-library-nav-prev{
    right:80px;
}

.dt-library-nav-next{
    right:0;
}

.dt-library-nav-prev::after,
.dt-library-nav-next::after{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    color:#08111f;
    font-size:18px;
    font-weight:700;
}

.dt-library-nav-prev::after{
    content:'←';
}

.dt-library-nav-next::after{
    content:'→';
}

@media(max-width:991px){

    .dt-library-showcase{
        padding:6rem 0;
    }

    .dt-library-visual{
        min-height:320px;
    }

    .dt-library-visual img{
        max-height:260px;
    }

    .dt-library-copy h3{
        font-size:1.6rem;
    }
}

@media(max-width:767px){

    .dt-library-nav-prev,
    .dt-library-nav-next{
        display:none;
    }

    .dt-library-flag{
        display:none;
    }

    .dt-library-copy{
        padding:1.5rem;
    }
}
```

/* ==========================================
   FATHERHOOD CRISIS
========================================== */

.fatherhood-book {
    position: relative;
}

.fatherhood-book::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at top right,
        rgba(124, 27, 36, 0.12),
        transparent 45%);
    pointer-events: none;
}

.fatherhood-book .book-cover {
    position: relative;
    overflow: hidden;
    border-radius: 28px;
    border: 1px solid rgba(253, 251, 247, 0.08);
    background: linear-gradient(
        180deg,
        rgba(255, 255, 255, 0.04),
        rgba(255, 255, 255, 0.01)
    );
    box-shadow: 0 30px 80px rgba(10, 17, 40, 0.3);
}

.fatherhood-book .book-cover img {
    width: 100%;
    transition: transform 0.6s ease;
}

.fatherhood-book:hover .book-cover img {
    transform: scale(1.03);
}

.fatherhood-highlights {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 32px 0;
}

.fatherhood-highlights span {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 0 18px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(253, 251, 247, 0.1);
    color: rgba(253, 251, 247, 0.78);
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.fatherhood-book .book-purchase-note {
    margin-bottom: 32px;
    color: rgba(253, 251, 247, 0.6);
    font-size: 15px;
    line-height: 1.7;
}

.fatherhood-book .btn-book {
    min-width: 220px;
}

/* Tablet */

@media (max-width: 991px) {

    .fatherhood-book .row {
        text-align: center;
    }

    .fatherhood-book .book-cover {
        max-width: 420px;
        margin: 0 auto;
    }

    .fatherhood-highlights {
        justify-content: center;
    }

    .fatherhood-book .book-actions {
        justify-content: center;
    }
}

/* Mobile */

@media (max-width: 767px) {

    .fatherhood-book {
        padding: 10px 0;
    }

    .fatherhood-book .book-copy h2 {
        font-size: 42px;
    }

    .fatherhood-book .book-copy h3 {
        font-size: 24px;
        line-height: 1.25;
    }

    .fatherhood-highlights {
        gap: 10px;
        margin: 24px 0;
    }

    .fatherhood-highlights span {
        width: 100%;
        justify-content: center;
        padding: 14px 18px;
    }

    .fatherhood-book .btn-book {
        width: 100%;
        min-width: 100%;
    }
}

```css
/* ==========================================
   BPD SPOUSE MONOGRAPH
========================================== */

.bpd-book {
    position: relative;
}

.bpd-book::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(
            circle at top left,
            rgba(150, 35, 46, 0.12),
            transparent 45%
        );
}

.bpd-book .book-cover {
    position: relative;
    overflow: hidden;
    border-radius: 28px;
    border: 1px solid rgba(253, 251, 247, 0.08);
    background: linear-gradient(
        180deg,
        rgba(255, 255, 255, 0.04),
        rgba(255, 255, 255, 0.01)
    );
    box-shadow: 0 30px 80px rgba(10, 17, 40, 0.3);
}

.bpd-book .book-cover img {
    width: 100%;
    transition: transform 0.6s ease;
}

.bpd-book:hover .book-cover img {
    transform: scale(1.03);
}

.bpd-highlights {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 32px 0 24px;
}

.bpd-highlights span {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 0 18px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(253, 251, 247, 0.1);
    color: rgba(253, 251, 247, 0.78);
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.bulk-discount {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px;
    padding: 14px 20px;
    border-left: 3px solid #96232e;
    background: rgba(150, 35, 46, 0.08);
    color: rgba(253, 251, 247, 0.82);
    font-size: 15px;
}

.bulk-discount strong {
    color: #fdfbf7;
}

.bpd-book .book-purchase-note {
    margin-bottom: 32px;
    color: rgba(253, 251, 247, 0.6);
}

.bpd-book .btn-book-outline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 54px;
    padding: 0 30px;
    border: 1px solid rgba(253, 251, 247, 0.14);
    background: transparent;
    color: #fdfbf7;
    text-decoration: none;
    transition: all .35s ease;
}

.bpd-book .btn-book-outline:hover {
    background: rgba(255, 255, 255, 0.06);
    color: #fff;
    transform: translateY(-2px);
}

@media (max-width: 991px) {

    .bpd-book .row {
        text-align: center;
    }

    .bpd-book .book-cover {
        max-width: 420px;
        margin: 0 auto;
    }

    .bpd-highlights,
    .book-actions {
        justify-content: center;
    }

    .bulk-discount {
        justify-content: center;
        text-align: center;
        width: 100%;
        border-left: 0;
        border-top: 3px solid #96232e;
    }
}

@media (max-width: 767px) {

    .bpd-highlights span {
        width: 100%;
        justify-content: center;
        padding: 14px 18px;
    }

    .bpd-book .book-actions {
        flex-direction: column;
    }

    .bpd-book .btn-book,
    .bpd-book .btn-book-outline {
        width: 100%;
    }
}
```


/* ==========================================
   FIX INVISIBLE TAGS / HIGHLIGHTS
========================================== */

.fatherhood-highlights,
.bpd-highlights {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 28px 0;
}

.fatherhood-highlights span,
.bpd-highlights span {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 10px 16px;
    min-height: 40px;

    background: #f8f5ef;
    border: 1px solid rgba(124, 27, 36, 0.15);
    border-radius: 999px;

    color: #4a4d59;              /* FIX: dark text */
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;

    white-space: nowrap;
}

/* BPD discount box */

.bulk-discount {
    display: flex;
    align-items: center;
    gap: 10px;

    margin: 24px 0;
    padding: 14px 18px;

    background: rgba(124, 27, 36, 0.06);
    border-left: 3px solid #7c1b24;

    color: #4a4d59;              /* FIX: dark text */
}

.bulk-discount strong {
    color: #7c1b24;
}

/* Fix inherited light text from book-copy */

.fatherhood-book .book-copy,
.bpd-book .book-copy {
    color: #4a4d59;
}

.fatherhood-book .book-copy p,
.bpd-book .book-copy p {
    color: #5f6470;
}

/* Fix buttons wrapping */

.fatherhood-book .book-actions,
.bpd-book .book-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

/* Mobile */

@media (max-width: 767px) {

    .fatherhood-highlights span,
    .bpd-highlights span {
        width: 100%;
        white-space: normal;
        text-align: center;
    }

    .bulk-discount {
        flex-direction: column;
        align-items: flex-start;
    }
}

```css
/* ==========================================
   PREMIUM FOOTER
========================================== */

.footer-bottom {
    margin-top: 80px;
    padding-top: 60px;
    border-top: 1px solid rgba(253, 251, 247, 0.08);
}

.footer-trust {
    padding-bottom: 60px;
}

.footer-security {
    display: inline-flex;
    align-items: center;
    gap: 18px;
    padding: 16px 22px;
    border-radius: 18px;
    background: rgba(255,255,255,.03);
    border: 1px solid rgba(253,251,247,.08);
    transition: all .35s ease;
}

.footer-security:hover {
    transform: translateY(-4px);
    border-color: rgba(253,251,247,.16);
    background: rgba(255,255,255,.05);
}

.footer-security-logo {
    width: 68px;
    height: auto;
    flex-shrink: 0;
}

.footer-security-content {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.footer-history {
    font-size: 11px;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: #96232e;
    font-weight: 600;
}

.footer-mission {
    margin: 0 auto 60px;
    max-width: 900px;
    text-align: center;
    font-size: 18px;
    line-height: 1.9;
    color: rgba(253,251,247,.72);
}

.footer-disclaimer {
    margin: 0 auto;
    padding: 40px 0;
    border-top: 1px solid rgba(253,251,247,.08);
    border-bottom: 1px solid rgba(253,251,247,.08);
}

.footer-disclaimer p {
    margin-bottom: 18px;
    font-size: 13px;
    line-height: 1.9;
    color: rgba(253,251,247,.46);
}

.footer-social-strip {
    gap: 16px;
}

.footer-social-strip a {
    transition: all .35s ease;
}

.footer-social-strip a:hover {
    transform: translateY(-4px);
}

.footer-academia {
    position: relative;
    display: inline-block;
    transition: all .35s ease;
}

.footer-academia:hover {
    color: #fff;
    transform: translateX(4px);
}

.footer-link,
.footer-security-content a {
    transition: color .3s ease;
}

.footer-link:hover,
.footer-security-content a:hover {
    color: #fff;
}

.copyright {
    margin: 32px 0 0;
    font-size: 12px;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: rgba(253,251,247,.38);
}

/* Fade-in animation */

.footer-main > div,
.footer-trust,
.footer-mission,
.footer-disclaimer,
.copyright {
    opacity: 0;
    transform: translateY(20px);
    animation: footerFadeUp .8s ease forwards;
}

.footer-trust {
    animation-delay: .1s;
}

.footer-mission {
    animation-delay: .2s;
}

.footer-disclaimer {
    animation-delay: .3s;
}

.copyright {
    animation-delay: .4s;
}

@keyframes footerFadeUp {

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 991px) {

    .footer-bottom {
        margin-top: 60px;
        padding-top: 50px;
    }

    .footer-trust {
        text-align: center;
        padding-bottom: 40px;
    }

    .footer-security {
        justify-content: center;
        width: 100%;
    }

    .footer-social-strip {
        justify-content: center;
        margin: 20px 0;
    }

    .footer-mission {
        font-size: 16px;
        margin-bottom: 40px;
    }

    .footer-disclaimer {
        text-align: center;
    }
}
```
/* ==========================================
   VERDICT STATEMENT
========================================== */

.dt-verdict-statement {
    position: relative;
    padding: 70px 0 90px;
    background: transparent;
}

.dt-verdict-wrap {
    max-width: 980px;
    margin: 0 auto;
    text-align: center;
}

.dt-verdict-line {
    display: block;
    width: 64px;
    height: 2px;
    margin: 0 auto 28px;
    background: #7c1b24;
}

.dt-verdict-label {
    margin: 0 0 24px;

    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.28em;
    text-transform: uppercase;

    color: rgba(15, 23, 42, 0.45);
}
.dt-verdict-quote {
    margin: 0;
    font-family: "Cormorant Garamond", serif;
    font-size: clamp(2.5rem, 5vw, 1.75rem);
    font-weight: 500;
    line-height: 1.12;
    color: #1e293b;
}

.dt-verdict-quote span {
    display: block;
    margin-top: 12px;

    color: #7c1b24;
    font-style: italic;
}

.dt-verdict-statement::after {
    content: "";

    display: block;

    width: 180px;
    height: 1px;

    margin: 60px auto 0;

    background: linear-gradient(
        90deg,
        transparent,
        rgba(15, 23, 42, 0.12),
        transparent
    );
}

@media (max-width: 991px) {

    .dt-verdict-statement {
        padding: 60px 0 70px;
    }

    .dt-verdict-quote {
        font-size: 3rem;
    }
}

@media (max-width: 767px) {

    .dt-verdict-statement {
        padding: 50px 0 60px;
    }

    .dt-verdict-label {
        letter-spacing: 0.18em;
        font-size: 10px;
    }

    .dt-verdict-quote {
        font-size: 2rem;
        line-height: 1.2;
    }
}

.xsvc-page {
    background: #f7f4ee;
    color: #1f2937;
}

/* HERO */

.xsvc-hero {
    padding: 180px 0 120px;
    background:
        radial-gradient(circle at top center, rgba(140, 31, 44, .18), transparent 45%),
        #0f172a;
}

.xsvc-eyebrow {
    display: inline-block;
    margin-bottom: 1.5rem;

    color: #b02837;

    font-size: .75rem;
    font-weight: 700;

    letter-spacing: .3em;
    text-transform: uppercase;
}

.xsvc-title {
    margin-bottom: 1.5rem;

    font-family: "Cormorant Garamond", serif;
    font-size: clamp(3rem, 8vw, 6rem);
    line-height: .95;

    color: #fff;
}

.xsvc-intro {
    max-width: 760px;
    margin: 0 auto;

    color: rgba(255,255,255,.75);

    font-size: 1.125rem;
    line-height: 1.9;
}

/* CONTENT */

.xsvc-content,
.xsvc-authority {
    padding: 120px 0;
}

.xsvc-sidebar {
    position: sticky;
    top: 120px;
}

.xsvc-sidebar-card,
.xsvc-article {
    background: #fff;
    border-radius: 32px;
    box-shadow: 0 24px 60px rgba(15,23,42,.08);
}

.xsvc-sidebar-card {
    padding: 2rem;
}

.xsvc-article {
    padding: 4rem;
}

.xsvc-sidebar-label {
    margin-bottom: 1.5rem;

    color: #8c1f2c;

    font-size: .75rem;
    font-weight: 700;

    letter-spacing: .2em;
    text-transform: uppercase;
}

.xsvc-feature-list {
    margin: 0 0 2rem;
    padding: 0;

    list-style: none;
}

.xsvc-feature-list li {
    position: relative;

    margin-bottom: 1rem;
    padding-left: 1.5rem;

    color: #475569;
}

.xsvc-feature-list li::before {
    content: "";

    position: absolute;
    top: 11px;
    left: 0;

    width: 7px;
    height: 7px;

    border-radius: 50%;
    background: #8c1f2c;
}

.xsvc-button {
    display: block;

    padding: 1rem 1.5rem;

    border-radius: 14px;

    background: #8c1f2c;
    color: #fff;

    font-weight: 600;
    text-align: center;
    text-decoration: none;

    transition: all .3s ease;
}

.xsvc-button:hover {
    background: #6f1722;
    color: #fff;
}

.xsvc-article h2,
.xsvc-authority-block h3,
.xsvc-authority-panel h2 {
    font-family: "Cormorant Garamond", serif;
}

.xsvc-article h2 {
    margin-bottom: 2rem;
    font-size: 3rem;
}

.xsvc-article p,
.xsvc-authority-block p {
    color: #475569;
    line-height: 1.95;
}

/* AUTHORITY */

.xsvc-authority {
    background: #fff;
}

.xsvc-authority-panel {
    position: sticky;
    top: 120px;

    padding: 2rem;

    border-radius: 32px;

    background: #0f172a;
    color: #fff;
}

.xsvc-authority-panel h2 {
    margin: 1rem 0 2rem;
    font-size: 2.5rem;
}

.xsvc-stats {
    display: grid;
    gap: 1rem;
}

.xsvc-stat {
    padding: 1rem 1.25rem;

    border-radius: 18px;

    background: rgba(255,255,255,.05);
}

.xsvc-stat strong {
    display: block;

    font-size: 2rem;
}

.xsvc-stat span {
    color: rgba(255,255,255,.65);

    font-size: .75rem;

    letter-spacing: .15em;
    text-transform: uppercase;
}

.xsvc-authority-block {
    margin-bottom: 3rem;
    padding-bottom: 3rem;

    border-bottom: 1px solid rgba(15,23,42,.08);
}

.xsvc-authority-block:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
}

.xsvc-authority-block h3 {
    margin-bottom: 1.5rem;
    font-size: 2rem;
}

.xsvc-authority-block p {
    margin-bottom: 1.5rem;
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .xsvc-hero {
        padding: 140px 0 90px;
    }

    .xsvc-content,
    .xsvc-authority {
        padding: 80px 0;
    }

    .xsvc-sidebar,
    .xsvc-authority-panel {
        position: static;
    }

    .xsvc-article {
        padding: 2.5rem;
    }
}

@media (max-width: 767px) {

    .xsvc-title {
        font-size: 3rem;
    }

    .xsvc-article,
    .xsvc-sidebar-card,
    .xsvc-authority-panel {
        padding: 1.75rem;
        border-radius: 24px;
    }

    .xsvc-article h2,
    .xsvc-authority-panel h2 {
        font-size: 2rem;
    }

    .xsvc-authority-block h3 {
        font-size: 1.75rem;
    }
}

/* ==========================================
   TESTIFYING EXPERT TEMPLATE
   Namespace: txp-
========================================== */

.txp-page {
    background: #f7f4ee;
    color: #1f2937;
    overflow-x: hidden;
}

/* ==========================================
   HERO
========================================== */

.txp-hero {
    position: relative;
    padding: 180px 0 120px;

    background:
        radial-gradient(
            circle at top center,
            rgba(140, 31, 44, 0.18),
            transparent 45%
        ),
        #0f172a;
}

.txp-eyebrow {
    display: inline-block;

    margin-bottom: 1.5rem;

    color: #b02837;

    font-size: 0.75rem;
    font-weight: 700;

    letter-spacing: 0.3em;
    text-transform: uppercase;
}

.txp-title {
    margin-bottom: 1.5rem;

    font-family: "Cormorant Garamond", serif;
    font-size: clamp(3rem, 8vw, 6rem);
    line-height: 0.95;
    font-weight: 600;

    color: #ffffff;
}

.txp-intro {
    max-width: 760px;
    margin: 0 auto;

    color: rgba(255, 255, 255, 0.75);

    font-size: 1.125rem;
    line-height: 1.9;
}

/* ==========================================
   CONTENT SECTION
========================================== */

.txp-content,
.txp-authority {
    padding: 120px 0;
}

.txp-sidebar {
    position: sticky;
    top: 120px;
}

.txp-sidebar-card,
.txp-article {
    background: #ffffff;
    border-radius: 32px;

    box-shadow:
        0 24px 60px rgba(15, 23, 42, 0.08);
}

.txp-sidebar-card {
    padding: 2rem;
}

.txp-sidebar-label {
    margin-bottom: 1.5rem;

    color: #8c1f2c;

    font-size: 0.75rem;
    font-weight: 700;

    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.txp-feature-list {
    margin: 0 0 2rem;
    padding: 0;

    list-style: none;
}

.txp-feature-list li {
    position: relative;

    padding-left: 1.5rem;
    margin-bottom: 1rem;

    color: #475569;
    line-height: 1.6;
}

.txp-feature-list li::before {
    content: "";

    position: absolute;
    top: 10px;
    left: 0;

    width: 8px;
    height: 8px;

    border-radius: 50%;
    background: #8c1f2c;
}

.txp-button {
    display: block;

    width: 100%;
    padding: 1rem 1.5rem;

    border: none;
    border-radius: 14px;

    background: #8c1f2c;
    color: #ffffff;

    font-weight: 600;
    text-align: center;
    text-decoration: none;

    transition:
        background-color 0.3s ease,
        transform 0.3s ease;
}

.txp-button:hover {
    background: #6f1722;
    color: #ffffff;

    transform: translateY(-2px);
}

.txp-article {
    padding: 4rem;
}

.txp-article h2,
.txp-authority-panel h2,
.txp-authority-block h3 {
    font-family: "Cormorant Garamond", serif;
    color: #0f172a;
}

.txp-article h2 {
    margin-bottom: 2rem;
    font-size: clamp(2.5rem, 4vw, 3.5rem);
}

.txp-article p,
.txp-authority-block p {
    margin-bottom: 1.5rem;

    color: #475569;

    font-size: 1rem;
    line-height: 1.95;
}

.txp-article p:last-child {
    margin-bottom: 0;
}

/* ==========================================
   AUTHORITY SECTION
========================================== */

.txp-authority {
    background: #ffffff;
}

.txp-authority-panel {
    position: sticky;
    top: 120px;

    padding: 2rem;

    border-radius: 32px;

    background: #0f172a;
    color: #ffffff;
}

.txp-authority-panel h2 {
    margin: 1rem 0 2rem;

    font-size: clamp(2rem, 4vw, 2.75rem);
    line-height: 1.1;

    color: #ffffff;
}

.txp-stats {
    display: grid;
    gap: 1rem;
}

.txp-stat {
    padding: 1rem 1.25rem;

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 18px;

    background: rgba(255, 255, 255, 0.05);
}

.txp-stat strong {
    display: block;

    margin-bottom: 0.4rem;

    font-size: 2rem;
    font-weight: 700;

    color: #ffffff;
}

.txp-stat span {
    color: rgba(255, 255, 255, 0.68);

    font-size: 0.75rem;

    letter-spacing: 0.15em;
    text-transform: uppercase;
}

.txp-authority-content {
    height: 100%;
}

.txp-authority-block {
    margin-bottom: 3rem;
    padding-bottom: 3rem;

    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
}

.txp-authority-block:last-child {
    margin-bottom: 0;
    padding-bottom: 0;

    border-bottom: none;
}

.txp-authority-block h3 {
    margin-bottom: 1.5rem;

    font-size: clamp(1.75rem, 3vw, 2.25rem);
}

.txp-authority-block p:last-child {
    margin-bottom: 0;
}

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

@media (max-width: 991.98px) {

    .txp-hero {
        padding: 140px 0 90px;
    }

    .txp-content,
    .txp-authority {
        padding: 80px 0;
    }

    .txp-sidebar,
    .txp-authority-panel {
        position: static;
    }

    .txp-article {
        padding: 2.5rem;
    }
}

@media (max-width: 767.98px) {

    .txp-hero {
        padding: 120px 0 80px;
    }

    .txp-content,
    .txp-authority {
        padding: 60px 0;
    }

    .txp-title {
        font-size: 3rem;
    }

    .txp-intro {
        font-size: 1rem;
    }

    .txp-sidebar-card,
    .txp-authority-panel,
    .txp-article {
        padding: 1.75rem;
        border-radius: 24px;
    }

    .txp-article h2,
    .txp-authority-panel h2 {
        font-size: 2rem;
    }

    .txp-authority-block h3 {
        font-size: 1.75rem;
    }

    .txp-stat strong {
        font-size: 1.75rem;
    }
}

/* ==========================================
   EXPERT LIMITED SCOPE TEMPLATE
   Namespace: xls-
========================================== */

.xls-page {
    background: #f7f4ee;
    color: #1f2937;
    overflow-x: hidden;
}

/* ==========================================
   HERO
========================================== */

.xls-hero {
    position: relative;
    padding: 180px 0 120px;

    background:
        radial-gradient(
            circle at top center,
            rgba(140, 31, 44, 0.16),
            transparent 45%
        ),
        #0f172a;
}

.xls-eyebrow {
    display: inline-block;

    margin-bottom: 1.5rem;

    color: #b02837;

    font-size: 0.75rem;
    font-weight: 700;

    letter-spacing: 0.3em;
    text-transform: uppercase;
}

.xls-title {
    margin-bottom: 1.5rem;

    font-family: "Cormorant Garamond", serif;
    font-size: clamp(3rem, 8vw, 6rem);
    line-height: 0.95;
    font-weight: 600;

    color: #ffffff;
}

.xls-intro {
    max-width: 760px;
    margin: 0 auto;

    color: rgba(255, 255, 255, 0.75);

    font-size: 1.125rem;
    line-height: 1.9;
}

/* ==========================================
   CONTENT SECTION
========================================== */

.xls-content,
.xls-authority {
    padding: 120px 0;
}

.xls-sidebar {
    position: sticky;
    top: 120px;
}

.xls-sidebar-card,
.xls-article {
    background: #ffffff;

    border-radius: 32px;

    box-shadow:
        0 24px 60px rgba(15, 23, 42, 0.08);
}

.xls-sidebar-card {
    padding: 2rem;
}

.xls-sidebar-label {
    margin-bottom: 1.5rem;

    color: #8c1f2c;

    font-size: 0.75rem;
    font-weight: 700;

    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.xls-feature-list {
    margin: 0 0 2rem;
    padding: 0;

    list-style: none;
}

.xls-feature-list li {
    position: relative;

    padding-left: 1.5rem;
    margin-bottom: 1rem;

    color: #475569;
    line-height: 1.7;
}

.xls-feature-list li::before {
    content: "";

    position: absolute;
    top: 10px;
    left: 0;

    width: 8px;
    height: 8px;

    border-radius: 50%;
    background: #8c1f2c;
}

.xls-button {
    display: block;

    width: 100%;
    padding: 1rem 1.5rem;

    border: none;
    border-radius: 14px;

    background: #8c1f2c;
    color: #ffffff;

    font-weight: 600;
    text-align: center;
    text-decoration: none;

    transition:
        background-color 0.3s ease,
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.xls-button:hover {
    background: #6f1722;
    color: #ffffff;

    transform: translateY(-2px);

    box-shadow: 0 12px 30px rgba(140, 31, 44, 0.2);
}

.xls-article {
    padding: 4rem;
}

.xls-article h2,
.xls-authority-panel h2,
.xls-authority-block h3 {
    font-family: "Cormorant Garamond", serif;
    color: #0f172a;
}

.xls-article h2 {
    margin-bottom: 2rem;

    font-size: clamp(2.5rem, 4vw, 3.5rem);
}

.xls-article p,
.xls-authority-block p {
    margin-bottom: 1.5rem;

    color: #475569;

    font-size: 1rem;
    line-height: 1.95;
}

.xls-article p:last-child {
    margin-bottom: 0;
}

/* ==========================================
   AUTHORITY SECTION
========================================== */

.xls-authority {
    background: #ffffff;
}

.xls-authority-panel {
    position: sticky;
    top: 120px;

    padding: 2rem;

    border-radius: 32px;

    background: #0f172a;
    color: #ffffff;
}

.xls-authority-panel h2 {
    margin: 1rem 0 2rem;

    font-size: clamp(2rem, 4vw, 2.75rem);
    line-height: 1.1;

    color: #ffffff;
}

.xls-stats {
    display: grid;
    gap: 1rem;
}

.xls-stat {
    padding: 1rem 1.25rem;

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 18px;

    background: rgba(255, 255, 255, 0.05);

    transition: transform 0.3s ease;
}

.xls-stat:hover {
    transform: translateY(-2px);
}

.xls-stat strong {
    display: block;

    margin-bottom: 0.4rem;

    font-size: 2rem;
    font-weight: 700;

    color: #ffffff;
}

.xls-stat span {
    color: rgba(255, 255, 255, 0.68);

    font-size: 0.75rem;

    letter-spacing: 0.15em;
    text-transform: uppercase;
}

.xls-authority-content {
    height: 100%;
}

.xls-authority-block {
    margin-bottom: 3rem;
    padding-bottom: 3rem;

    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
}

.xls-authority-block:last-child {
    margin-bottom: 0;
    padding-bottom: 0;

    border-bottom: none;
}

.xls-authority-block h3 {
    margin-bottom: 1.5rem;

    font-size: clamp(1.75rem, 3vw, 2.25rem);
}

.xls-authority-block p:last-child {
    margin-bottom: 0;
}

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

@media (max-width: 991.98px) {

    .xls-hero {
        padding: 140px 0 90px;
    }

    .xls-content,
    .xls-authority {
        padding: 80px 0;
    }

    .xls-sidebar,
    .xls-authority-panel {
        position: static;
    }

    .xls-article {
        padding: 2.5rem;
    }
}

@media (max-width: 767.98px) {

    .xls-hero {
        padding: 120px 0 80px;
    }

    .xls-content,
    .xls-authority {
        padding: 60px 0;
    }

    .xls-title {
        font-size: 3rem;
    }

    .xls-intro {
        font-size: 1rem;
    }

    .xls-sidebar-card,
    .xls-authority-panel,
    .xls-article {
        padding: 1.75rem;
        border-radius: 24px;
    }

    .xls-article h2,
    .xls-authority-panel h2 {
        font-size: 2rem;
    }

    .xls-authority-block h3 {
        font-size: 1.75rem;
    }

    .xls-stat strong {
        font-size: 1.75rem;
    }
}

/* ==========================================
   HEADER
========================================== */

.site-header {
    position: sticky;
    top: 0;
    z-index: 9999;

    backdrop-filter: blur(18px);

    background: rgba(8, 17, 31, .92);

    border-bottom: 1px solid rgba(255,255,255,.06);
}

/* ==========================================
   TOPBAR
========================================== */

.topbar {
    padding: .75rem 0;

    border-bottom: 1px solid rgba(255,255,255,.06);
}

.topbar-text {
    color: rgba(255,255,255,.72);

    font-size: .72rem;
    font-weight: 500;

    letter-spacing: .12em;
    text-transform: uppercase;
}

.topbar-links {
    display: flex;
    justify-content: flex-end;
    gap: 2rem;
}

.topbar-links a {
    color: rgba(255,255,255,.75);

    font-size: .82rem;
    text-decoration: none;

    transition: color .3s ease;
}

.topbar-links a:hover {
    color: #ffffff;
}

/* ==========================================
   NAVBAR
========================================== */

.main-navbar {
    padding: 1.5rem 0;
}

.navbar-brand {
    display: flex;
    flex-direction: column;

    text-decoration: none;
}

.brand-name {
    font-family: "Cormorant Garamond", serif;
    font-size: 2.75rem;
    font-weight: 600;
    line-height: .9;

    color: #fff;
}

.brand-credentials {
    margin-top: .5rem;

    color: rgba(255,255,255,.5);

    font-size: .85rem;

    letter-spacing: .18em;
    text-transform: uppercase;
}

.navbar-nav {
    gap: 2rem;
}

.navbar-nav .menu-item > a {
    color: rgba(255,255,255,.82);

    font-size: .95rem;
    font-weight: 500;

    text-decoration: none;

    transition: color .3s ease;
}

.navbar-nav .menu-item > a:hover,
.navbar-nav .current-menu-item > a {
    color: #ffffff;
}

/* ==========================================
   DROPDOWNS
========================================== */

.navbar-nav .sub-menu {
    position: absolute;

    min-width: 260px;

    padding: 1rem 0;
    margin-top: 1rem;

    background: #101a2d;

    border: 1px solid rgba(255,255,255,.06);
    border-radius: 18px;

    box-shadow: 0 24px 60px rgba(0,0,0,.28);

    opacity: 0;
    visibility: hidden;

    transform: translateY(10px);

    transition: all .3s ease;

    list-style: none;
}

.navbar-nav .menu-item-has-children {
    position: relative;
}

.navbar-nav .menu-item-has-children:hover > .sub-menu {
    opacity: 1;
    visibility: visible;

    transform: translateY(0);
}

.navbar-nav .sub-menu li a {
    display: block;

    padding: .75rem 1.5rem;

    color: rgba(255,255,255,.72);

    text-decoration: none;
}

.navbar-nav .sub-menu li a:hover {
    background: rgba(255,255,255,.04);
    color: #fff;
}

/* ==========================================
   ACTIONS
========================================== */

.header-actions {
    display: flex;
    align-items: center;
    gap: 2rem;
}

.header-metrics {
    display: flex;
    align-items: center;
    gap: 1rem;

    color: rgba(255,255,255,.65);

    font-size: .8rem;
    font-weight: 600;

    letter-spacing: .2em;
    text-transform: uppercase;
}

.metric-divider {
    width: 1px;
    height: 14px;

    background: rgba(255,255,255,.15);
}

.btn-retain {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 130px;
    height: 54px;

    padding: 0 2rem;

    background: #8c1f2c;
    color: #fff;

    border-radius: 14px;

    font-weight: 600;
    text-decoration: none;

    transition: all .3s ease;
}

.btn-retain:hover {
    background: #a52635;
    color: #fff;

    transform: translateY(-2px);
}

/* ==========================================
   MOBILE
========================================== */

.navbar-toggler {
    border: 0;
    padding: 0;
}

.navbar-toggler span {
    display: block;

    width: 26px;
    height: 2px;

    margin: 5px 0;

    background: #fff;
}

@media (max-width: 1199px) {

    .topbar {
        display: none;
    }

    .main-navbar {
        padding: 1rem 0;
    }

    .navbar-collapse {
        margin-top: 1.5rem;

        padding: 2rem;

        background: #101a2d;

        border-radius: 24px;
    }

    .navbar-nav {
        gap: 1rem;
    }

    .navbar-nav .sub-menu {
        position: static;

        opacity: 1;
        visibility: visible;

        transform: none;

        margin-top: .75rem;

        background: transparent;
        border: 0;
        box-shadow: none;
    }

    .header-actions {
        flex-direction: column;
        align-items: flex-start;

        margin-top: 2rem;
    }

    .header-metrics {
        display: none !important;
    }

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

@media (max-width: 767px) {

    .brand-name {
        font-size: 2rem;
    }

    .brand-credentials {
        font-size: .75rem;
    }
}

/* ==========================================
   HERO TRUST METRICS
========================================== */

.hero-content-wrap {
    max-width: 680px;
}

.hero-metrics {
    display: inline-flex;
    align-items: center;
    gap: 1.5rem;

    padding: 1rem 1.5rem;

    border: 1px solid rgba(255,255,255,.12);
    border-radius: 999px;

    background: rgba(255,255,255,.04);

    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);

    box-shadow:
        0 20px 50px rgba(0,0,0,.18),
        inset 0 1px 0 rgba(255,255,255,.06);
}

.hero-metric-item {
    position: relative;
}

.hero-metric-item span {
    color: rgba(255,255,255,.88);

    font-size: .78rem;
    font-weight: 700;

    letter-spacing: .22em;
    text-transform: uppercase;

    white-space: nowrap;
}

.hero-metric-divider {
    width: 1px;
    height: 18px;

    background: linear-gradient(
        to bottom,
        transparent,
        rgba(255,255,255,.25),
        transparent
    );
}

/* subtle hover */

.hero-metrics:hover {
    border-color: rgba(255,255,255,.18);

    background: rgba(255,255,255,.06);

    transform: translateY(-2px);

    transition: all .35s ease;
}

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

@media (max-width: 991.98px) {

    .hero-content-wrap {
        max-width: 100%;
    }

    .hero-metrics {
        margin-bottom: 1rem;
    }
}

@media (max-width: 575.98px) {

    .hero-metrics {
        width: 100%;

        justify-content: center;
        gap: .75rem;

        padding: .875rem 1rem;

        flex-wrap: wrap;

        border-radius: 20px;
    }

    .hero-metric-item span {
        font-size: .7rem;
        letter-spacing: .14em;
    }

    .hero-metric-divider {
        display: none;
    }
}

/* Smooth scrolling optimization */

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

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

/* Reveal defaults */

.reveal-card,
.reveal-section,
.fade-up {
    opacity: 0;
    transform: translateY(40px);
}

/* Hero image parallax */

.hero-parallax img {
    transform: scale(1.1);
    will-change: transform;
}

/* Magnetic hover cards */

.magnetic-card {
    transition:
        transform .4s cubic-bezier(.2,.8,.2,1),
        box-shadow .4s ease;
}

.magnetic-card:hover {
    transform: translateY(-12px);

    box-shadow:
        0 30px 60px rgba(0,0,0,.15);
}

/* Service cards */

.service-card {
    transition:
        transform .45s ease,
        box-shadow .45s ease;
}

.service-card:hover {
    transform: translateY(-10px);

    box-shadow:
        0 24px 60px rgba(15,23,42,.12);
}

/* Stats count */

.stat h3 {
    will-change: transform;
}

/* Hero metrics glow */

.hero-metrics {
    transition:
        transform .4s ease,
        box-shadow .4s ease;
}

.hero-metrics:hover {
    transform: translateY(-4px);

    box-shadow:
        0 20px 50px rgba(255,255,255,.08);
}

/* ============================================================
   DT LIBRARY SHOWCASE
   Section: .dt-library-showcase
   Swiper class: .dt-library-carousel
============================================================ */

/* ── SECTION WRAPPER ── */

.dt-library-showcase {
    position: relative;
    padding: 120px 0 140px;
    background:
        radial-gradient(circle at top right, rgba(212, 175, 55, .07), transparent 35%),
        linear-gradient(180deg, #fdfbf7 0%, #f4efe7 100%);
    overflow: hidden;
}

.dt-library-showcase::before {
    content: "";
    position: absolute;
    top: -280px;
    right: -240px;
    width: 720px;
    height: 720px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(124, 27, 36, .05), transparent 70%);
    pointer-events: none;
}

.dt-library-showcase::after {
    content: "";
    position: absolute;
    bottom: -260px;
    left: -240px;
    width: 680px;
    height: 680px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(30, 42, 63, .04), transparent 70%);
    pointer-events: none;
}


/* ── HEADER ROW ── */

.dt-library-header {
    margin-bottom: 60px;
    position: relative;
    z-index: 2;
}

.dt-library-overline {
    display: block;
    margin-bottom: 14px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .26em;
    text-transform: uppercase;
    color: #7c1b24;
}

.dt-library-heading {
    margin: 0 0 18px;
    font-family: "Cormorant Garamond", serif;
    font-size: clamp(40px, 5vw, 68px);
    line-height: .95;
    letter-spacing: -.04em;
    color: #08111f;
}

.dt-library-intro {
    margin: 0;
    font-size: 18px;
    line-height: 1.85;
    color: #5b6676;
    max-width: 680px;
}

.dt-library-intro em {
    font-style: italic;
    color: #08111f;
}

.dt-library-cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 54px;
    padding: 0 28px;
    border-radius: 999px;
    border: 1px solid rgba(10, 17, 40, .12);
    background: rgba(10, 17, 40, .03);
    color: #08111f;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: all .35s ease;
}

.dt-library-cta span {
    font-size: 18px;
    line-height: 1;
    transition: transform .35s ease;
}

.dt-library-cta:hover {
    background: #7c1b24;
    border-color: #7c1b24;
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 14px 36px rgba(124, 27, 36, .22);
}

.dt-library-cta:hover span {
    transform: translateX(4px);
}


/* ── SWIPER WRAPPER ── */

.dt-library-carousel {
    position: relative;
    overflow: visible;
    padding-bottom: 90px; /* room for nav arrows */
    z-index: 2;
}

.dt-library-carousel .swiper-wrapper {
    align-items: stretch;
}

.dt-library-carousel .swiper-slide {
    height: auto;
}


/* ── CARD ── */

.dt-library-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    border-radius: 28px;
    overflow: hidden;
    background: #fff;
    border: 1px solid rgba(10, 17, 40, .06);
    box-shadow: 0 20px 55px rgba(10, 17, 40, .08);
    text-decoration: none;
    transition: transform .45s cubic-bezier(.2, .8, .2, 1),
                box-shadow .45s ease,
                border-color .35s ease;
    cursor: pointer;
}

.dt-library-card:hover {
    transform: translateY(-12px);
    box-shadow: 0 38px 90px rgba(10, 17, 40, .14);
    border-color: rgba(124, 27, 36, .14);
}


/* ── VISUAL (cover area) ── */

.dt-library-visual {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 380px;
    padding: 40px 32px;
    background: linear-gradient(150deg, #08111f 0%, #132544 60%, #1a2e5a 100%);
    overflow: hidden;
    flex-shrink: 0;
}

/* Gold radial glow behind cover */
.dt-library-visual::before {
    content: "";
    position: absolute;
    top: -60px;
    right: -60px;
    width: 280px;
    height: 280px;
    background: radial-gradient(circle, rgba(212, 175, 55, .18), transparent 65%);
    pointer-events: none;
}

/* Bottom gradient fade */
.dt-library-visual::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 80px;
    background: linear-gradient(to top, rgba(8, 17, 31, .4), transparent);
    pointer-events: none;
}

.dt-library-visual img {
    position: relative;
    z-index: 2;
    max-height: 300px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
    filter: drop-shadow(0 28px 40px rgba(0, 0, 0, .4));
    transition: transform .5s cubic-bezier(.2, .8, .2, 1);
}

.dt-library-card:hover .dt-library-visual img {
    transform: translateY(-8px) scale(1.03);
}


/* ── NEW RELEASE RIBBON ── */

.dt-library-flag {
    position: absolute;
    top: 22px;
    right: -38px;
    z-index: 5;
    padding: 8px 48px;
    background: #d4af37;
    color: #08111f;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .2em;
    text-transform: uppercase;
    transform: rotate(45deg);
    white-space: nowrap;
    pointer-events: none;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .2);
}


/* ── COPY AREA ── */

.dt-library-copy {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    padding: 28px 28px 32px;
}

.dt-library-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 16px;
}

.dt-library-year {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .2em;
    color: #7c1b24;
    text-transform: uppercase;
}

.dt-library-status {
    display: inline-flex;
    align-items: center;
    padding: 5px 12px;
    border-radius: 999px;
    background: rgba(212, 175, 55, .12);
    border: 1px solid rgba(212, 175, 55, .25);
    color: #9a7415;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.dt-library-copy h3 {
    margin: 0 0 10px;
    font-family: "Cormorant Garamond", serif;
    font-size: 30px;
    line-height: 1.05;
    letter-spacing: -.03em;
    color: #08111f;
    transition: color .3s ease;
}

.dt-library-card:hover .dt-library-copy h3 {
    color: #7c1b24;
}

.dt-library-copy h4 {
    margin: 0 0 16px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    color: #7c1b24;
    font-style: normal;
}

.dt-library-copy p {
    margin: 0 0 auto;
    font-size: 15px;
    line-height: 1.85;
    color: #5b6676;
    padding-bottom: 24px;
}

.dt-library-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding-top: 20px;
    border-top: 1px solid rgba(10, 17, 40, .08);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .06em;
    color: #08111f;
    transition: color .3s ease, gap .3s ease;
}

.dt-library-link::after {
    content: "→";
    font-size: 16px;
    transition: transform .3s ease;
}

.dt-library-card:hover .dt-library-link {
    color: #7c1b24;
    gap: 12px;
}

.dt-library-card:hover .dt-library-link::after {
    transform: translateX(4px);
}


/* ── NAVIGATION ARROWS ── */

.dt-library-nav-prev,
.dt-library-nav-next {
    position: absolute;
    bottom: 0;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: #fff;
    border: 1px solid rgba(10, 17, 40, .1);
    box-shadow: 0 10px 28px rgba(10, 17, 40, .1);
    cursor: pointer;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .3s ease;
    user-select: none;
}

.dt-library-nav-prev {
    right: 72px;
}

.dt-library-nav-next {
    right: 0;
}

.dt-library-nav-prev::after,
.dt-library-nav-next::after {
    font-size: 18px;
    font-weight: 700;
    color: #08111f;
    transition: color .3s ease, transform .3s ease;
}

.dt-library-nav-prev::after {
    content: "←";
}

.dt-library-nav-next::after {
    content: "→";
}

.dt-library-nav-prev:hover,
.dt-library-nav-next:hover {
    background: #7c1b24;
    border-color: #7c1b24;
    box-shadow: 0 14px 36px rgba(124, 27, 36, .28);
    transform: translateY(-2px);
}

.dt-library-nav-prev:hover::after,
.dt-library-nav-next:hover::after {
    color: #fff;
}

.dt-library-nav-prev:hover::after {
    transform: translateX(-2px);
}

.dt-library-nav-next:hover::after {
    transform: translateX(2px);
}

/* Swiper disabled state */
.dt-library-nav-prev.swiper-button-disabled,
.dt-library-nav-next.swiper-button-disabled {
    opacity: .3;
    pointer-events: none;
}


/* ── SWIPER PAGINATION (optional dots) ── */

.dt-library-carousel .swiper-pagination {
    bottom: 20px;
}

.dt-library-carousel .swiper-pagination-bullet {
    width: 6px;
    height: 6px;
    background: rgba(10, 17, 40, .2);
    opacity: 1;
    transition: all .3s ease;
}

.dt-library-carousel .swiper-pagination-bullet-active {
    width: 24px;
    border-radius: 3px;
    background: #7c1b24;
}


/* ── RESPONSIVE ── */

@media (max-width: 1199px) {

    .dt-library-showcase {
        padding: 100px 0 120px;
    }

    .dt-library-visual {
        min-height: 320px;
    }

    .dt-library-visual img {
        max-height: 250px;
    }
}

@media (max-width: 991px) {

    .dt-library-showcase {
        padding: 90px 0 110px;
    }

    .dt-library-header {
        margin-bottom: 48px;
    }

    .dt-library-intro {
        font-size: 16px;
    }

    .dt-library-cta {
        min-height: 48px;
        padding: 0 22px;
    }

    .dt-library-visual {
        min-height: 280px;
        padding: 32px 24px;
    }

    .dt-library-visual img {
        max-height: 220px;
    }

    .dt-library-copy h3 {
        font-size: 26px;
    }
}

@media (max-width: 767px) {

    .dt-library-showcase {
        padding: 80px 0 100px;
    }

    .dt-library-heading {
        font-size: 40px;
        letter-spacing: -.03em;
    }

    .dt-library-intro {
        font-size: 15px;
    }

    .dt-library-header .text-lg-end {
        text-align: left !important;
        margin-top: 8px;
    }

    .dt-library-carousel {
        padding-bottom: 0;
    }

    /* Hide custom arrows on mobile — swipe gesture handles it */
    .dt-library-nav-prev,
    .dt-library-nav-next {
        display: none;
    }

    /* Also hide the 2026 ribbon — clips on small cards */
    .dt-library-flag {
        display: none;
    }

    .dt-library-visual {
        min-height: 260px;
        padding: 28px 20px;
    }

    .dt-library-visual img {
        max-height: 200px;
    }

    .dt-library-copy {
        padding: 22px 22px 26px;
    }

    .dt-library-copy h3 {
        font-size: 24px;
    }

    .dt-library-copy h4 {
        font-size: 13px;
    }

    .dt-library-copy p {
        font-size: 14px;
    }

    .dt-library-link {
        font-size: 12px;
    }
}

@media (max-width: 480px) {

    .dt-library-showcase {
        padding: 70px 0 80px;
    }

    .dt-library-heading {
        font-size: 34px;
    }

    .dt-library-visual {
        min-height: 240px;
    }

    .dt-library-visual img {
        max-height: 180px;
    }
}

/* ==========================================================
   FIX CLICKABLE BUTTONS
========================================================== */

.ata-book-card,
.ata-book-content,
.ata-book-actions{
    position:relative;
}

.ata-book-content{
    z-index:5;
}

.ata-book-actions{
    display:flex;
    gap:16px;
    flex-wrap:wrap;
    margin-top:2rem;
    z-index:20;
}

.ata-btn-primary,
.ata-btn-secondary{

    display:inline-flex;
    align-items:center;
    justify-content:center;

    position:relative;
    z-index:999;

    pointer-events:auto;

    min-height:56px;

    padding:0 32px;

    text-decoration:none;

    cursor:pointer;

}

/* Any decorative overlays should never capture clicks */

.ata-book-card::before,
.ata-book-card::after,
.ata-book-image::before,
.ata-book-image::after,
.ata-book-cover::before,
.ata-book-cover::after{

    pointer-events:none;

}

/* Image should never sit above buttons */

.ata-book-image,
.ata-book-cover{

    position:relative;
    z-index:1;

}

.ata-book-image img,
.ata-book-cover img{

    position:relative;
    z-index:2;

}

/* Content stays above image */

.ata-book-content{

    position:relative;
    z-index:10;

}

/* Button always highest */

.ata-btn-primary,
.ata-btn-secondary{

    position:relative;
    z-index:9999;

}

/* Hover */

.ata-btn-secondary:hover{

    transform:translateY(-3px);

}

.ata-btn-primary:hover{

    transform:translateY(-3px);

}

.book-actions .cart{
    display:flex;
    align-items:center;
    gap:18px;
    flex-wrap:wrap;
}

.book-actions .quantity input{

    width:90px;
    height:54px;

    border:1px solid #d8d8d8;
    border-radius:12px;

    text-align:center;

    font-weight:600;

}

.book-btn-primary{

    height:54px;

    padding:0 34px;

    border:none;

    border-radius:14px;

    background:#7c1b24;

    color:#fff;

    font-weight:600;

    cursor:pointer;

    transition:.35s;

}

.book-btn-primary:hover{

    background:#5f151c;

}

/* ==========================================================
   FORCE HERO BUTTONS TO BE CLICKABLE
   Put this at the VERY END of style.css
========================================================== */

.ei-hero{
    position:relative !important;
    overflow:visible !important;
    z-index:10 !important;
}

.ei-hero::before,
.ei-hero::after{
    pointer-events:none !important;
}

.ei-hero .container,
.ei-hero .row,
.ei-hero .col-lg-5,
.ei-hero .col-lg-7{
    position:relative !important;
    z-index:20 !important;
}

.ei-book-cover{
    position:relative !important;
    z-index:30 !important;
}

.ei-book-cover::before,
.ei-book-cover::after{
    pointer-events:none !important;
}

.ei-actions{
    position:relative !important;
    z-index:99999 !important;

    display:flex;
    flex-wrap:wrap;
    gap:18px;
}

.ei-actions a,
.ei-btn-primary,
.ei-btn-outline{

    position:relative !important;

    z-index:999999 !important;

    pointer-events:auto !important;

    cursor:pointer !important;

    display:inline-flex !important;

    align-items:center;

    justify-content:center;

    text-decoration:none;

}

/* absolutely-positioned decorative elements */
.ei-hero *::before,
.ei-hero *::after{
    pointer-events:none;
}

/* restore pointer events on links/buttons */
.ei-actions a::before,
.ei-actions a::after{
    pointer-events:none;
}

/* if another section overlaps */
.book-product,
#book-product,
main,
.site-main{

    position:relative;

    z-index:1;

}
/* Purchase Box */

.ei-purchase-box {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 32px;
    background: linear-gradient(135deg, #fdfbf7 0%, #f5f0e8 100%);
    border: 1px solid rgba(10,17,40,.08);
    border-radius: 28px;
    box-shadow: 0 20px 50px rgba(10,17,40,.07);
}

.ei-product-price {
    font-family: "Cormorant Garamond", serif;
    font-size: 42px;
    font-weight: 700;
    line-height: 1;
    color: var(--ei-primary);
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(10,17,40,.08);
}

/* Quantity row */

.ei-purchase-box .quantity {
    margin: 0 0 16px;
}

.ei-purchase-box .quantity label {
    display: block;
    margin-bottom: 8px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: rgba(10,17,40,.45);
}

.ei-purchase-box .qty {
    width: 100%;
    height: 52px;
    border-radius: 14px;
    border: 1px solid rgba(10,17,40,.12);
    background: #fff;
    text-align: center;
    font-size: 18px;
    font-weight: 600;
    color: var(--ei-dark);
    transition: border-color .3s ease;
}

.ei-purchase-box .qty:focus {
    outline: none;
    border-color: var(--ei-primary);
    box-shadow: 0 0 0 4px rgba(124,27,36,.08);
}

/* Add to cart button */

.ei-purchase-box .single_add_to_cart_button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 56px;
    padding: 0 32px;
    border: none;
    border-radius: 999px;
    background: var(--ei-primary);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    cursor: pointer;
    transition: all .35s ease;
    box-shadow: 0 12px 30px rgba(124,27,36,.28);
}

.ei-purchase-box .single_add_to_cart_button:hover {
    background: var(--ei-primary-dark);
    transform: translateY(-2px);
    box-shadow: 0 18px 40px rgba(124,27,36,.36);
}

/* Shipping note */

.ei-purchase-box::after {
    content: "📦  Paperback shipped within 2–3 business days";
    display: block;
    margin-top: 16px;
    font-size: 12px;
    letter-spacing: .04em;
    color: rgba(10,17,40,.45);
    text-align: center;
}

/* ==========================================================
   CASE QUESTIONNAIRE FORM
   Namespace: cq-
   Matches theme palette: #7c1b24 primary, #0a1128 dark,
   #fdfbf7 paper, Cormorant Garamond display
========================================================== */

/* ── SECTION WRAPPER ── */

.cq-section {
    padding: 120px 0 140px;
    background: linear-gradient(to bottom, #fdfbf7 0%, #f5f0e8 100%);
}

/* ── HEADING BLOCK ── */

.cq-heading {
    margin-bottom: 60px;
}

.cq-overline {
    display: inline-block;
    margin-bottom: 14px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .28em;
    text-transform: uppercase;
    color: #7c1b24;
}

.cq-title {
    margin: 0 0 16px;
    font-family: "Cormorant Garamond", serif;
    font-size: clamp(36px, 5vw, 56px);
    line-height: .95;
    letter-spacing: -.04em;
    color: #0a1128;
}

.cq-subtitle {
    max-width: 600px;
    margin: 0 auto;
    font-size: 17px;
    line-height: 1.85;
    color: #5b6676;
}

/* ── TWO-COLUMN LAYOUT ── */

.cq-wrap {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 40px;
    align-items: start;
}

/* ── SIDEBAR ── */

.cq-sidebar {
    position: sticky;
    top: 120px;
}

.cq-sidebar-card {
    padding: 36px 30px;
    background: #0a1128;
    border-radius: 28px;
    color: #fdfbf7;
    box-shadow: 0 24px 60px rgba(10, 17, 40, .16);
}

.cq-sidebar-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    border-radius: 16px;
    background: rgba(124, 27, 36, .18);
    color: #c87880;
    margin-bottom: 20px;
}

.cq-sidebar-heading {
    margin: 0 0 20px;
    font-family: "Cormorant Garamond", serif;
    font-size: 26px;
    line-height: 1.1;
    color: #fdfbf7;
}

.cq-sidebar-list {
    margin: 0 0 28px;
    padding: 0;
    list-style: none;
}

.cq-sidebar-list li {
    position: relative;
    padding-left: 22px;
    margin-bottom: 14px;
    font-size: 14px;
    line-height: 1.65;
    color: rgba(253, 251, 247, .74);
}

.cq-sidebar-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #7c1b24;
}

.cq-sidebar-divider {
    height: 1px;
    background: rgba(253, 251, 247, .08);
    margin: 0 0 24px;
}

.cq-sidebar-label {
    margin: 0 0 8px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: rgba(253, 251, 247, .45);
}

.cq-sidebar-phone {
    display: block;
    margin-bottom: 20px;
    font-family: "Cormorant Garamond", serif;
    font-size: 28px;
    color: #fdfbf7;
    text-decoration: none;
    transition: color .3s ease;
}

.cq-sidebar-phone:hover {
    color: #c87880;
}

.cq-sidebar-note {
    padding: 16px 18px;
    background: rgba(124, 27, 36, .12);
    border-left: 3px solid #7c1b24;
    border-radius: 0 12px 12px 0;
    font-size: 13px;
    line-height: 1.7;
    color: rgba(253, 251, 247, .65);
}

/* ── FORM CARD ── */

.cq-form-card {
    background: #fff;
    border-radius: 32px;
    border: 1px solid rgba(10, 17, 40, .06);
    box-shadow: 0 25px 70px rgba(10, 17, 40, .08);
    overflow: hidden;
}

/* ── FORM SECTIONS ── */

.cq-form-section {
    padding: 36px 40px;
    border-bottom: 1px solid rgba(10, 17, 40, .06);
}

.cq-form-section:last-of-type {
    border-bottom: none;
}

.cq-section-label {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 28px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: rgba(10, 17, 40, .45);
}

.cq-section-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #7c1b24;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0;
    flex-shrink: 0;
}

/* ── FIELD GRID ── */

.cq-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.cq-field {
    display: flex;
    flex-direction: column;
}

.cq-field--full {
    grid-column: 1 / -1;
}

/* ── LABELS ── */

.cq-label {
    display: block;
    margin-bottom: 8px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #0a1128;
}

/* Override CF7 generated labels inside .cq-field */
.cq-field > label,
.cq-form-card .cq-field label:not(.cq-label) {
    display: block;
    margin-bottom: 8px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #0a1128;
}

.cq-req {
    color: #7c1b24;
    margin-left: 2px;
}

/* ── INPUTS ── */

.cq-form-card input[type="text"],
.cq-form-card input[type="email"],
.cq-form-card input[type="tel"],
.cq-form-card input[type="date"],
.cq-form-card select,
.cq-form-card textarea,
.wpcf7-form .cq-form-card input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]) {
    width: 100%;
    min-height: 52px;
    padding: 14px 18px;
    border: 1px solid rgba(10, 17, 40, .12);
    border-radius: 14px;
    background: #fdfbf7;
    color: #0a1128;
    font-size: 15px;
    font-family: inherit;
    transition: border-color .3s ease, box-shadow .3s ease, background .3s ease;
    box-shadow: none;
    appearance: none;
    -webkit-appearance: none;
}

.cq-form-card textarea {
    min-height: 130px;
    resize: vertical;
    line-height: 1.7;
}

.cq-form-card select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%230a1128' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='2 4 6 8 10 4'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    padding-right: 40px;
    cursor: pointer;
}

.cq-form-card input::placeholder,
.cq-form-card textarea::placeholder {
    color: rgba(10, 17, 40, .35);
}

.cq-form-card input:focus,
.cq-form-card select:focus,
.cq-form-card textarea:focus {
    outline: none;
    border-color: #7c1b24;
    background: #fff;
    box-shadow: 0 0 0 4px rgba(124, 27, 36, .08);
}

/* CF7 span wrappers — make them block so fields fill the grid */
.cq-form-card .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

/* ── RADIO BUTTONS ── */

.cq-radio-group {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}

.cq-form-card .wpcf7-radio .wpcf7-list-item {
    margin: 0;
}

.cq-form-card .wpcf7-radio .wpcf7-list-item label {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 20px;
    border: 1px solid rgba(10, 17, 40, .12);
    border-radius: 999px;
    background: #fdfbf7;
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    color: #0a1128;
    letter-spacing: .04em;
    transition: all .25s ease;
}

.cq-form-card .wpcf7-radio .wpcf7-list-item label:hover {
    border-color: #7c1b24;
    background: rgba(124, 27, 36, .04);
}

.cq-form-card .wpcf7-radio input[type="radio"] {
    width: 16px;
    height: 16px;
    min-height: 16px;
    accent-color: #7c1b24;
    flex-shrink: 0;
}

.cq-form-card .wpcf7-radio input[type="radio"]:checked + span,
.cq-form-card .wpcf7-radio .wpcf7-list-item input[type="radio"]:checked ~ label {
    border-color: #7c1b24;
    background: rgba(124, 27, 36, .06);
    color: #7c1b24;
}

/* ── CONSENT ── */

.cq-consent {
    margin: 0;
    padding: 28px 40px;
    background: rgba(10, 17, 40, .02);
    border-top: 1px solid rgba(10, 17, 40, .06);
}

.cq-form-card .wpcf7-acceptance .wpcf7-list-item {
    margin: 0;
}

.cq-form-card .wpcf7-acceptance .wpcf7-list-item label {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    font-size: 14px;
    line-height: 1.75;
    color: #5b6676;
    letter-spacing: 0;
    text-transform: none;
    font-weight: 400;
    cursor: pointer;
}

.cq-form-card .wpcf7-acceptance input[type="checkbox"] {
    width: 20px;
    height: 20px;
    min-height: 20px;
    min-width: 20px;
    margin-top: 2px;
    accent-color: #7c1b24;
    flex-shrink: 0;
}

/* ── SUBMIT ── */

.cq-submit-row {
    padding: 28px 40px 40px;
    display: flex;
    justify-content: flex-end;
}

.cq-form-card input[type="submit"],
.cq-form-card .wpcf7-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 58px;
    padding: 0 48px;
    border: none;
    border-radius: 999px;
    background: #7c1b24;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    cursor: pointer;
    transition: all .35s ease;
    box-shadow: 0 14px 36px rgba(124, 27, 36, .28);
    pointer-events: auto;
    position: relative;
    z-index: 10;
}

.cq-form-card input[type="submit"]:hover,
.cq-form-card .wpcf7-submit:hover {
    background: #62141b;
    transform: translateY(-2px);
    box-shadow: 0 20px 44px rgba(124, 27, 36, .36);
}

/* ── CF7 SPINNER ── */

.cq-form-card .wpcf7-spinner {
    margin-left: 14px;
    vertical-align: middle;
}

/* ── CF7 RESPONSE MESSAGES ── */

.cq-form-card .wpcf7-response-output {
    margin: 0 40px 28px !important;
    padding: 18px 22px !important;
    border-radius: 14px !important;
    font-size: 14px !important;
    border: none !important;
}

.cq-form-card .wpcf7 form.sent .wpcf7-response-output {
    background: rgba(22, 163, 74, .08);
    border-left: 4px solid #16a34a !important;
    color: #166534;
}

.cq-form-card .wpcf7 form.failed .wpcf7-response-output,
.cq-form-card .wpcf7 form.aborted .wpcf7-response-output {
    background: rgba(124, 27, 36, .06);
    border-left: 4px solid #7c1b24 !important;
    color: #7c1b24;
}

/* ── VALIDATION ERRORS ── */

.cq-form-card .wpcf7-not-valid {
    border-color: #c62828 !important;
    box-shadow: 0 0 0 4px rgba(198, 40, 40, .08) !important;
}

.cq-form-card .wpcf7-not-valid-tip {
    display: block;
    margin-top: 6px;
    font-size: 12px;
    color: #c62828;
    letter-spacing: .02em;
}

/* ── RESPONSIVE ── */

@media (max-width: 1199px) {
    .cq-wrap {
        grid-template-columns: 260px 1fr;
    }
}

@media (max-width: 991px) {
    .cq-section {
        padding: 90px 0 110px;
    }

    .cq-wrap {
        grid-template-columns: 1fr;
    }

    .cq-sidebar {
        position: static;
    }

    .cq-sidebar-card {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0 32px;
        align-items: start;
    }

    .cq-sidebar-icon,
    .cq-sidebar-heading,
    .cq-sidebar-list {
        grid-column: 1 / -1;
    }

    .cq-sidebar-divider {
        grid-column: 1 / -1;
    }
}

@media (max-width: 767px) {
    .cq-section {
        padding: 70px 0 90px;
    }

    .cq-form-section {
        padding: 28px 24px;
    }

    .cq-row {
        grid-template-columns: 1fr;
    }

    .cq-field--full {
        grid-column: 1;
    }

    .cq-consent {
        padding: 24px;
    }

    .cq-submit-row {
        padding: 24px 24px 32px;
        justify-content: stretch;
    }

    .cq-form-card input[type="submit"],
    .cq-form-card .wpcf7-submit {
        width: 100%;
    }

    .cq-form-card .wpcf7-response-output {
        margin: 0 24px 24px !important;
    }

    .cq-sidebar-card {
        grid-template-columns: 1fr;
    }
}