

/* ── ELEMENTOR FULLWIDTH ESCAPE ── */

.au-hero,

.elementor-widget-html .au-hero,

.elementor-widget-container .au-hero {

  position: relative;

  width: 100vw;

  max-width: 100vw;

  left: 50%;

  margin-left: -50vw;

  box-sizing: border-box;

}



/* ── ROOT ── */

.au-hero {

  font-family: 'Mulish', sans-serif;

  min-height: calc(100vh - 84px);

  display: flex;

  flex-direction: column;

  justify-content: center;

  overflow: hidden;

  background: #1D201C;

}



/* Background image */

.au-hero__bg {

  position: absolute;

  inset: 0;

  background-image: none;

  background-size: cover;

  background-position: center 40%;

  transform: scale(1.03);

  animation: au-zoom-out 14s ease-out forwards;

}

@keyframes au-zoom-out {

  from { transform: scale(1.03); }

  to   { transform: scale(1.0); }

}



/* Multi-layer overlay: top vignette + bottom text zone */

.au-hero__overlay {

  position: absolute;

  inset: 0;

  background:

    linear-gradient(to bottom,

      rgba(29, 32, 28,0.30) 0%,

      rgba(29, 32, 28,0.10) 35%,

      rgba(29, 32, 28,0.55) 65%,

      rgba(29, 32, 28,0.92) 100%

    );

}



/* Fine diagonal texture */

.au-hero__texture {

  position: absolute;

  inset: 0;

  background-image: repeating-linear-gradient(

    -52deg, transparent, transparent 3px,

    rgba(255,255,255,0.01) 3px, rgba(255,255,255,0.01) 4px

  );

  pointer-events: none;

}



/* Est. year stamp — top right */

.au-hero__stamp {

  position: absolute;

  top: 36px;

  right: 5%;

  z-index: 3;

  display: flex;

  align-items: center;

  gap: 12px;

  opacity: 0;

  animation: au-fade-in 1s 0.3s ease forwards;

}

.au-hero__stamp-line {

  width: 36px; height: 1px;

  background: rgba(166, 58, 46,0.6);

}

.au-hero__stamp-text {

  font-size: 10px;

  font-weight: 700;

  letter-spacing: 0.25em;

  text-transform: uppercase;

  color: rgba(255,255,255,0.5);

}



/* Left gold accent bar */

.au-hero__bar {

  position: absolute;

  left: 0;

  top: 20%;

  bottom: 10%;

  width: 4px;

  background: linear-gradient(to bottom, transparent, #A63A2E 25%, #A63A2E 75%, transparent);

  z-index: 3;

}



/* Main content — sits at bottom */

.au-hero__content {

  position: relative;

  z-index: 4;

  padding: 0 6% 100px calc(6% + 20px);

  max-width: 1200px;

  width: 100%;

  margin: 0 auto;

}



.au-hero__eyebrow {

  display: inline-flex;

  align-items: center;

  gap: 10px;

  font-size: 10px;

  font-weight: 700;

  letter-spacing: 0.26em;

  text-transform: uppercase;

  color: #A63A2E;

  margin-bottom: 22px;

  opacity: 0;

  animation: au-fade-up 0.7s 0.4s ease forwards;

}

.au-hero__eyebrow::before {

  content: '';

  width: 28px; height: 1px;

  background: #A63A2E;

  display: block;

}



.au-hero__headline {

  font-family: 'Playfair Display', Georgia, serif;

  font-size: clamp(2.4rem, 5vw, 5rem);

  font-weight: 700;

  color: #fff;

  line-height: 1.08;

  margin: 0 0 22px;

  max-width: 820px;

  text-shadow: 0 4px 32px rgba(0,0,0,0.4);

  opacity: 0;

  animation: au-fade-up 0.9s 0.6s ease forwards;

}

.au-hero__headline em {

  font-style: italic;

  color: #A63A2E;

}



.au-hero__tagline {

  font-size: clamp(1rem, 1.8vw, 1.25rem);

  font-weight: 300;

  color: rgba(255,255,255,0.72);

  line-height: 1.7;

  max-width: 600px;

  margin: 0 0 40px;

  text-shadow: 0 2px 12px rgba(0,0,0,0.3);

  opacity: 0;

  animation: au-fade-up 0.9s 0.8s ease forwards;

}

.au-hero__tagline strong {

  font-weight: 600;

  color: rgba(255,255,255,0.92);

}



/* Dual buttons */

.au-hero__btns {

  display: flex;

  gap: 14px;

  flex-wrap: wrap;

  opacity: 0;

  animation: au-fade-up 0.9s 1.0s ease forwards;

}



.au-btn-gold {

  display: inline-flex;

  align-items: center;

  gap: 9px;

  padding: 14px 32px;

  background: #A63A2E;

  color: #fff;

  font-family: 'Mulish', sans-serif;

  font-size: 12px;

  font-weight: 700;

  letter-spacing: 0.1em;

  text-transform: uppercase;

  text-decoration: none;

  border: 2px solid #A63A2E;

  transition: background 0.25s, transform 0.2s;

}

.au-btn-gold:hover { background: #8E2A22; transform: translateY(-2px); }



.au-btn-ghost {

  display: inline-flex;

  align-items: center;

  gap: 9px;

  padding: 14px 32px;

  background: rgba(255,255,255,0.10);

  color: #fff;

  font-family: 'Mulish', sans-serif;

  font-size: 12px;

  font-weight: 600;

  letter-spacing: 0.1em;

  text-transform: uppercase;

  text-decoration: none;

  border: 2px solid rgba(255,255,255,0.40);

  backdrop-filter: blur(4px);

  transition: background 0.25s, border-color 0.25s, transform 0.2s;

}

.au-btn-ghost:hover {

  background: rgba(255,255,255,0.18);

  border-color: rgba(255,255,255,0.75);

  transform: translateY(-2px);

}



/* Bottom facts strip */

.au-hero__strip {

  position: absolute;

  bottom: 0;

  left: 0;

  right: 0;

  z-index: 4;

  background: rgba(166, 58, 46,0.92);

  backdrop-filter: blur(8px);

  padding: 0 6%;

  display: flex;

  align-items: stretch;

  opacity: 0;

  animation: au-fade-in 0.8s 1.2s ease forwards;

}

.au-hero__strip { flex-wrap: wrap; }
.au-strip-item { flex: 1 1 25%; min-width: 210px; }



.au-strip-item {

  flex: 1;

  padding: 18px 24px;

  display: flex;

  align-items: center;

  gap: 14px;

  border-right: 1px solid rgba(255,255,255,0.2);

}

.au-strip-item:last-child { border-right: none; }



.au-strip-item__icon {

  color: #fff;

  opacity: 0.9;

  flex-shrink: 0;

}



.au-strip-item__text {}

.au-strip-item__num {

  font-family: 'Playfair Display', Georgia, serif;

  font-size: 1.5rem;

  font-weight: 700;

  color: #fff;

  line-height: 1;

}

.au-strip-item__label {

  font-size: 10.5px;

  font-weight: 600;

  letter-spacing: 0.1em;

  text-transform: uppercase;

  color: rgba(255,255,255,0.82);

  margin-top: 2px;

}



/* Scroll indicator */

.au-hero__scroll {

  position: absolute;

  right: 5%;

  bottom: 80px;

  z-index: 4;

  display: flex;

  flex-direction: column;

  align-items: center;

  gap: 8px;

  opacity: 0;

  animation: au-fade-in 1s 1.5s ease forwards;

}

.au-hero__scroll span {

  font-size: 9px;

  letter-spacing: 0.2em;

  text-transform: uppercase;

  color: rgba(255,255,255,0.35);

  font-weight: 600;

  writing-mode: vertical-rl;

  text-orientation: mixed;

}

.au-hero__scroll-line {

  width: 1px; height: 48px;

  background: linear-gradient(to bottom, rgba(255,255,255,0.5), transparent);

  animation: au-scroll-pulse 2s ease-in-out infinite;

}

@keyframes au-scroll-pulse {

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

  50% { opacity: 1; transform: scaleY(0.6); }

}



@keyframes au-fade-up {

  from { opacity: 0; transform: translateY(24px); }

  to   { opacity: 1; transform: translateY(0); }

}

@keyframes au-fade-in {

  from { opacity: 0; }

  to   { opacity: 1; }

}



/* ── Responsive ── */

@media (max-width: 900px) {

  .au-hero__strip { flex-wrap: wrap; }

  .au-strip-item { flex: 1 1 50%; border-bottom: 1px solid rgba(255,255,255,0.15); }

  .au-strip-item:nth-child(2) { border-right: none; }

  .au-hero__content { padding: 0 5% 170px calc(5% + 14px); }

}

@media (max-width: 768px) {

  .au-hero { height: calc(100svh - 68px); min-height: 0; }

  .au-hero__content { position: absolute; top: 0; left: 0; right: 0; bottom: 0; padding: 72px 5% 300px calc(5% + 14px); margin: 0; display: flex; flex-direction: column; justify-content: center; }

  .au-hero__eyebrow { font-size: 11px; margin-bottom: 12px; }
  .au-hero__headline { font-size: clamp(2rem, 7vw, 3rem); margin-bottom: 16px; line-height: 1.08; }
  .au-hero__tagline { font-size: 0.95rem; line-height: 1.55; margin-bottom: 22px; }
  .au-hero__btns { flex-direction: column; gap: 10px; }

  .au-btn-gold, .au-btn-ghost { justify-content: center; padding: 12px 20px; font-size: 13px; }

  .au-hero__scroll { display: none; }

  .au-strip-item { flex: 1 1 100%; border-right: none; padding: 12px 18px; gap: 12px; }
  .au-strip-item__num { font-size: 1.25rem; }
  .au-strip-item__label { font-size: 10px; }

}

@media (max-width: 560px) {
  .au-strip-item { flex-basis: 100%; border-right: none; }
  .au-hero__content { padding: 70px 5% 250px calc(5% + 14px); }
  .au-hero__eyebrow { font-size: 11px; margin-bottom: 10px; }
  .au-hero__headline { font-size: clamp(1.8rem, 8vw, 2.6rem); margin-bottom: 14px; line-height: 1.1; }
  .au-hero__tagline { font-size: 0.92rem; line-height: 1.55; margin-bottom: 20px; }
  .au-hero__btns { gap: 10px; }
  .au-btn-gold { padding: 12px 20px; font-size: 13px; }
  .au-hero__stamp { display: none; }
  .au-strip-item { padding: 10px 16px; gap: 10px; }
  .au-strip-item__num { font-size: 1.15rem; }
  .au-strip-item__label { font-size: 9.5px; }
}




.au-nums {

  font-family: 'Mulish', sans-serif;

  background: #1D201C;

  padding: 96px 6%;

  position: relative;

  overflow: hidden;

}



/* 顶部金线 */

.au-nums::after {

  content: '';

  position: absolute;

  top: 0; left: 0; right: 0;

  height: 3px;

  background: linear-gradient(to right, transparent, #A63A2E 20%, #A63A2E 80%, transparent);

}



/* 网格底纹 */

.au-nums::before {

  content: '';

  position: absolute;

  inset: 0;

  background-image:

    linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px),

    linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px);

  background-size: 80px 80px;

  pointer-events: none;

}



.au-nums-inner {

  max-width: 1200px;

  margin: 0 auto;

  position: relative;

  z-index: 1;

}



/* 头部 */

.au-nums-header {

  margin-bottom: 64px;

}

.au-nums-eyebrow {

  font-size: .72rem;

  font-weight: 700;

  letter-spacing: .18em;

  text-transform: uppercase;

  color: #A63A2E;

  margin-bottom: 12px;

  display: flex;

  align-items: center;

  gap: 12px;

}

.au-nums-eyebrow::before {

  content: '';

  width: 28px; height: 1.5px;

  background: #A63A2E;

  flex-shrink: 0;

}

.au-nums-header h2 {

  font-family: 'Playfair Display', serif;

  font-size: clamp(1.9rem, 3vw, 2.8rem);

  font-weight: 700;

  color: #fff;

  line-height: 1.18;

  margin: 0;

}



/* ── 4列数字网格 ── */

.au-nums-grid {

  display: grid;

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

  gap: 1px;

  background: rgba(255,255,255,.07);

  border: 1px solid rgba(255,255,255,.07);

  border-radius: 4px;

  overflow: hidden;

}



.au-num-card {

  background: rgba(255,255,255,.025);

  padding: 48px 36px 44px;

  position: relative;

  overflow: hidden;

  transition: background .3s;

  display: flex;

  flex-direction: column;

}

.au-num-card:hover {

  background: rgba(255,255,255,.055);

}



/* hover 顶部金线 */

.au-num-card::before {

  content: '';

  position: absolute;

  top: 0; left: 0; right: 0;

  height: 2px;

  background: #A63A2E;

  transform: scaleX(0);

  transform-origin: left;

  transition: transform .35s ease;

}

.au-num-card:hover::before {

  transform: scaleX(1);

}



/* 大背景装饰数字 */

.au-card-bg {

  position: absolute;

  bottom: -10px; right: -4px;

  font-family: 'Playfair Display', serif;

  font-size: 6.5rem;

  font-weight: 700;

  color: rgba(255,255,255,.03);

  line-height: 1;

  pointer-events: none;

  user-select: none;

  transition: color .3s;

}

.au-num-card:hover .au-card-bg {

  color: rgba(166, 58, 46,.06);

}



/* 大数字 */

.au-card-num {

  font-family: 'Playfair Display', serif;

  font-size: clamp(2.8rem, 4vw, 4rem);

  font-weight: 700;

  color: #fff;

  line-height: 1;

  margin-bottom: 6px;

  position: relative;

  z-index: 1;

}

.au-card-num em {

  font-style: normal;

  font-size: .55em;

  color: #A63A2E;

  vertical-align: super;

  margin-left: 2px;

}



/* 小标签 */

.au-card-label {

  font-size: .7rem;

  font-weight: 700;

  letter-spacing: .14em;

  text-transform: uppercase;

  color: #A63A2E;

  margin-bottom: 16px;

  position: relative;

  z-index: 1;

}



/* 分割线 */

.au-card-rule {

  width: 28px; height: 1.5px;

  background: rgba(166, 58, 46,.4);

  margin-bottom: 16px;

  flex-shrink: 0;

}



/* 描述 */

.au-card-desc {

  font-size: .84rem;

  color: rgba(255,255,255,.48);

  line-height: 1.72;

  position: relative;

  z-index: 1;

  flex: 1;

}



/* 响应式 */

@media (max-width: 1024px) {

  .au-nums-grid { grid-template-columns: repeat(2, 1fr); }

}

@media (max-width: 600px) {

  .au-nums { padding: 64px 5%; }

  .au-nums-grid { grid-template-columns: 1fr; }

  .au-num-card { padding: 36px 28px; }

  .au-nums-header { margin-bottom: 40px; }

}




.au-vi,

.elementor-widget-html .au-vi,

.elementor-widget-container .au-vi {

  position: relative;

  width: 100vw;

  max-width: 100vw;

  left: 50%;

  margin-left: -50vw;

  box-sizing: border-box;

}



.au-vi {

  font-family: 'Mulish', sans-serif;

  background: #F6F1E6;

  padding: 100px 6%;

  position: relative;

  overflow: hidden;

}



/* Subtle right-side texture */

.au-vi::after {

  content: '';

  position: absolute;

  right: 0; top: 0; bottom: 0;

  width: 40%;

  background: linear-gradient(to left, rgba(29, 32, 28,0.03), transparent);

  pointer-events: none;

}



.au-vi__inner {

  max-width: 1200px;

  margin: 0 auto;

  position: relative;

  z-index: 1;

}



/* 2-col layout: left text, right process */

.au-vi__layout {

  display: grid;

  grid-template-columns: 1fr 1.4fr;

  gap: 80px;

  align-items: center;

}



/* LEFT */

.au-vi__left {}



.au-vi__eyebrow {

  display: inline-flex;

  align-items: center;

  gap: 10px;

  font-size: 10px;

  font-weight: 700;

  letter-spacing: 0.26em;

  text-transform: uppercase;

  color: #A63A2E;

  margin-bottom: 16px;

}

.au-vi__eyebrow::before {

  content: '';

  width: 24px; height: 2px;

  background: #A63A2E;

  display: block;

}



.au-vi__title {

  font-family: 'Playfair Display', Georgia, serif;

  font-size: clamp(1.9rem, 3.2vw, 3rem);

  font-weight: 700;

  color: #1D201C;

  line-height: 1.15;

  margin: 0 0 22px;

}

.au-vi__title em {

  font-style: italic;

  color: #A63A2E;

}



.au-vi__desc {

  font-size: 15px;

  color: #4A5A65;

  line-height: 1.8;

  margin-bottom: 32px;

}



/* Advantage bullets */

.au-vi__advantages {

  display: flex;

  flex-direction: column;

  gap: 14px;

  margin-bottom: 36px;

}



.au-vi-adv {

  display: flex;

  align-items: flex-start;

  gap: 14px;

}



.au-vi-adv__icon {

  width: 32px; height: 32px;

  background: rgba(166, 58, 46,0.12);

  border: 1px solid rgba(166, 58, 46,0.3);

  border-radius: 50%;

  display: flex;

  align-items: center;

  justify-content: center;

  color: #A63A2E;

  flex-shrink: 0;

  margin-top: 2px;

}



.au-vi-adv__text {}

.au-vi-adv__label {

  font-size: 13px;

  font-weight: 700;

  color: #1D201C;

  margin-bottom: 2px;

  letter-spacing: 0.02em;

}

.au-vi-adv__sub {

  font-size: 12.5px;

  color: #7E827A;

  line-height: 1.6;

}



/* Quote block */

.au-vi__quote {

  padding: 20px 24px;

  border-left: 3px solid #A63A2E;

  background: rgba(29, 32, 28,0.04);

}

.au-vi__quote p {

  font-size: 13.5px;

  color: #4A5A65;

  line-height: 1.75;

  font-style: italic;

  margin: 0;

}



/* RIGHT — Process Flow */

.au-vi__right {}



.au-vi__process-label {

  font-size: 10px;

  font-weight: 700;

  letter-spacing: 0.2em;

  text-transform: uppercase;

  color: #A63A2E;

  margin-bottom: 28px;

  text-align: center;

}



.au-vi__flow {

  display: flex;

  flex-direction: column;

  gap: 0;

}



.au-vi-step {

  display: grid;

  grid-template-columns: 56px 1fr;

  gap: 0;

  position: relative;

}



/* Vertical connector line */

.au-vi-step:not(:last-child)::after {

  content: '';

  position: absolute;

  left: 27px;

  top: 56px;

  bottom: 0;

  width: 2px;

  background: linear-gradient(to bottom, #A63A2E, rgba(166, 58, 46,0.15));

}



.au-vi-step__left {

  display: flex;

  flex-direction: column;

  align-items: center;

  padding-top: 4px;

}



.au-vi-step__circle {

  width: 56px; height: 56px;

  border-radius: 50%;

  background: #20241E;

  border: 2px solid rgba(166, 58, 46,0.3);

  display: flex;

  align-items: center;

  justify-content: center;

  color: #A63A2E;

  flex-shrink: 0;

  position: relative;

  z-index: 1;

  transition: background 0.3s, border-color 0.3s, transform 0.3s;

}

.au-vi-step:hover .au-vi-step__circle {

  background: #A63A2E;

  border-color: #A63A2E;

  color: #fff;

  transform: scale(1.08);

}



.au-vi-step__body {

  padding: 12px 0 36px 24px;

}



.au-vi-step__num {

  font-size: 9px;

  font-weight: 700;

  letter-spacing: 0.2em;

  color: rgba(166, 58, 46,0.6);

  text-transform: uppercase;

  margin-bottom: 4px;

}



.au-vi-step__name {

  font-family: 'Playfair Display', Georgia, serif;

  font-size: 1.25rem;

  font-weight: 600;

  color: #1D201C;

  margin-bottom: 6px;

}



.au-vi-step__detail {

  font-size: 13px;

  color: #7E827A;

  line-height: 1.65;

}



/* Tags */

.au-vi-step__tags {

  display: flex;

  flex-wrap: wrap;

  gap: 6px;

  margin-top: 8px;

}

.au-vi-tag {

  font-size: 10px;

  font-weight: 600;

  letter-spacing: 0.05em;

  color: #20241E;

  background: rgba(29, 32, 28,0.07);

  border: 1px solid rgba(29, 32, 28,0.15);

  padding: 3px 10px;

}



/* ── Responsive ── */

@media (max-width: 1024px) {

  .au-vi__layout { grid-template-columns: 1fr; gap: 56px; }

  .au-vi__flow { max-width: 580px; }

}

@media (max-width: 768px) {

  .au-vi { padding: 64px 5%; }

}




.au-direct,

.elementor-widget-html .au-direct,

.elementor-widget-container .au-direct {

  position: relative;

  width: 100vw;

  max-width: 100vw;

  left: 50%;

  margin-left: -50vw;

  box-sizing: border-box;

}



.au-direct {

  font-family: 'Mulish', sans-serif;

  background: #20241E;

  padding: 100px 6%;

  position: relative;

  overflow: hidden;

}



/* Background subtle grid */

.au-direct::before {

  content: '';

  position: absolute;

  inset: 0;

  background-image:

    linear-gradient(rgba(255,255,255,0.02) 1px, transparent 1px),

    linear-gradient(90deg, rgba(255,255,255,0.02) 1px, transparent 1px);

  background-size: 64px 64px;

  pointer-events: none;

}



/* Radial glow top-right */

.au-direct::after {

  content: '';

  position: absolute;

  top: -100px; right: -100px;

  width: 600px; height: 600px;

  background: radial-gradient(circle, rgba(166, 58, 46,0.08) 0%, transparent 65%);

  pointer-events: none;

}



.au-direct__inner {

  max-width: 1200px;

  margin: 0 auto;

  position: relative;

  z-index: 1;

}



/* Centered header */

.au-direct__header {

  text-align: center;

  margin-bottom: 72px;

}



.au-direct__eyebrow {

  display: inline-flex;

  align-items: center;

  gap: 12px;

  font-size: 10px;

  font-weight: 700;

  letter-spacing: 0.26em;

  text-transform: uppercase;

  color: #A63A2E;

  margin-bottom: 16px;

}

.au-direct__eyebrow::before, .au-direct__eyebrow::after {

  content: '';

  width: 28px; height: 1px;

  background: rgba(166, 58, 46,0.6);

  display: block;

}



.au-direct__title {

  font-family: 'Playfair Display', Georgia, serif;

  font-size: clamp(2rem, 3.5vw, 3.2rem);

  font-weight: 700;

  color: #fff;

  line-height: 1.15;

  margin: 0 0 16px;

}

.au-direct__title em {

  font-style: italic;

  color: #A63A2E;

}



.au-direct__subtitle {

  font-size: 15px;

  color: rgba(255,255,255,0.6);

  line-height: 1.75;

  max-width: 580px;

  margin: 0 auto;

}



/* Comparison table */

.au-direct__compare {

  display: grid;

  grid-template-columns: 1fr auto 1fr;

  gap: 0;

  margin-bottom: 72px;

  position: relative;

}



/* vs divider */

.au-direct__vs {

  display: flex;

  align-items: center;

  justify-content: center;

  padding: 0 20px;

  flex-direction: column;

  gap: 8px;

}

.au-direct__vs-circle {

  width: 48px; height: 48px;

  border-radius: 50%;

  background: #A63A2E;

  display: flex;

  align-items: center;

  justify-content: center;

  font-family: 'Playfair Display', Georgia, serif;

  font-size: 0.85rem;

  font-weight: 700;

  color: #fff;

}

.au-direct__vs-line {

  width: 1px;

  height: 100%;

  background: linear-gradient(to bottom, transparent, rgba(166, 58, 46,0.3), transparent);

  position: absolute;

  left: 50%;

  top: 0; bottom: 0;

  z-index: 0;

}



/* Column headers */

.au-compare-col {

  position: relative;

}



.au-compare-col__header {

  padding: 24px 32px;

  display: flex;

  align-items: center;

  gap: 12px;

  margin-bottom: 2px;

}



.au-compare-col--bad .au-compare-col__header {

  background: rgba(255,255,255,0.04);

  border: 1px solid rgba(255,255,255,0.07);

  border-bottom: none;

}

.au-compare-col--good .au-compare-col__header {

  background: rgba(166, 58, 46,0.12);

  border: 1px solid rgba(166, 58, 46,0.25);

  border-bottom: none;

}



.au-compare-col__badge {

  font-size: 10px;

  font-weight: 700;

  letter-spacing: 0.15em;

  text-transform: uppercase;

  padding: 4px 12px;

}

.au-compare-col--bad .au-compare-col__badge {

  color: rgba(255,255,255,0.4);

  border: 1px solid rgba(255,255,255,0.15);

}

.au-compare-col--good .au-compare-col__badge {

  color: #A63A2E;

  border: 1px solid rgba(166, 58, 46,0.4);

}



.au-compare-col__name {

  font-family: 'Playfair Display', Georgia, serif;

  font-size: 1.2rem;

  font-weight: 600;

}

.au-compare-col--bad .au-compare-col__name { color: rgba(255,255,255,0.5); }

.au-compare-col--good .au-compare-col__name { color: #fff; }



/* Rows */

.au-compare-rows {

  display: flex;

  flex-direction: column;

  gap: 2px;

}



.au-compare-row {

  padding: 18px 32px;

  display: flex;

  align-items: center;

  gap: 12px;

}

.au-compare-col--bad .au-compare-row {

  background: rgba(255,255,255,0.025);

  border: 1px solid rgba(255,255,255,0.05);

  border-top: none;

}

.au-compare-col--good .au-compare-row {

  background: rgba(166, 58, 46,0.05);

  border: 1px solid rgba(166, 58, 46,0.15);

  border-top: none;

}



.au-compare-row__icon {

  flex-shrink: 0;

}

.au-compare-col--bad .au-compare-row__icon { color: rgba(255,100,80,0.7); }

.au-compare-col--good .au-compare-row__icon { color: #A63A2E; }



.au-compare-row__text {}

.au-compare-row__label {

  font-size: 12.5px;

  font-weight: 600;

}

.au-compare-col--bad .au-compare-row__label { color: rgba(255,255,255,0.45); }

.au-compare-col--good .au-compare-row__label { color: rgba(255,255,255,0.9); }



.au-compare-row__sub {

  font-size: 11.5px;

  line-height: 1.5;

  margin-top: 2px;

}

.au-compare-col--bad .au-compare-row__sub { color: rgba(255,255,255,0.28); }

.au-compare-col--good .au-compare-row__sub { color: rgba(255,255,255,0.55); }



/* 3 Guarantee cards */

.au-direct__guarantees {

  display: grid;

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

  gap: 2px;

  background: rgba(255,255,255,0.05);

  border: 1px solid rgba(255,255,255,0.07);

}



.au-guarantee {

  padding: 44px 36px;

  position: relative;

  overflow: hidden;

  transition: background 0.35s;

}

.au-guarantee:hover {

  background: rgba(255,255,255,0.04);

}



/* Gold accent line on hover */

.au-guarantee::after {

  content: '';

  position: absolute;

  top: 0; left: 0; right: 0;

  height: 2px;

  background: #A63A2E;

  transform: scaleX(0);

  transform-origin: left;

  transition: transform 0.4s;

}

.au-guarantee:hover::after { transform: scaleX(1); }



.au-guarantee__num {

  font-family: 'Playfair Display', Georgia, serif;

  font-size: 3.5rem;

  font-weight: 700;

  color: rgba(166, 58, 46,0.15);

  line-height: 1;

  margin-bottom: 20px;

  transition: color 0.3s;

}

.au-guarantee:hover .au-guarantee__num { color: rgba(166, 58, 46,0.25); }



.au-guarantee__title {

  font-family: 'Playfair Display', Georgia, serif;

  font-size: 1.35rem;

  font-weight: 600;

  color: #fff;

  margin-bottom: 12px;

  line-height: 1.25;

}



.au-guarantee__desc {

  font-size: 13.5px;

  color: rgba(255,255,255,0.55);

  line-height: 1.75;

}



.au-guarantee__tag {

  display: inline-block;

  margin-top: 16px;

  font-size: 10px;

  font-weight: 700;

  letter-spacing: 0.14em;

  text-transform: uppercase;

  color: #A63A2E;

  border: 1px solid rgba(166, 58, 46,0.35);

  padding: 4px 12px;

}



/* ── Responsive ── */

@media (max-width: 1024px) {

  .au-direct__compare { grid-template-columns: 1fr; }

  .au-direct__vs { display: none; }

  .au-direct__guarantees { grid-template-columns: 1fr; }

}

@media (max-width: 768px) {

  .au-direct { padding: 64px 5%; }

  .au-direct__header { margin-bottom: 48px; }

  .au-guarantee { padding: 32px 24px; }

  .au-compare-row { padding: 14px 20px; }

  .au-compare-col__header { padding: 18px 20px; }

}




.au-comply,

.elementor-widget-html .au-comply,

.elementor-widget-container .au-comply {

  position: relative;

  width: 100vw;

  max-width: 100vw;

  left: 50%;

  margin-left: -50vw;

  box-sizing: border-box;

}



.au-comply {

  font-family: 'Mulish', sans-serif;

  background: #fff;

  padding: 100px 6%;

  position: relative;

  overflow: hidden;

}



/* Top gold line */

.au-comply::before {

  content: '';

  position: absolute;

  top: 0; left: 0; right: 0;

  height: 3px;

  background: linear-gradient(to right, transparent, #A63A2E 20%, #A63A2E 80%, transparent);

}



.au-comply__inner {

  max-width: 1200px;

  margin: 0 auto;

}



/* Header */

.au-comply__header {

  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 60px;

  align-items: end;

  margin-bottom: 72px;

}



.au-comply__eyebrow {

  display: inline-flex;

  align-items: center;

  gap: 10px;

  font-size: 10px;

  font-weight: 700;

  letter-spacing: 0.26em;

  text-transform: uppercase;

  color: #A63A2E;

  margin-bottom: 14px;

}

.au-comply__eyebrow::before {

  content: '';

  width: 24px; height: 2px;

  background: #A63A2E; display: block;

}



.au-comply__title {

  font-family: 'Playfair Display', Georgia, serif;

  font-size: clamp(1.9rem, 3vw, 3rem);

  font-weight: 700;

  color: #1D201C;

  line-height: 1.15;

  margin: 0;

}



.au-comply__header-desc {

  font-size: 15px;

  color: #4C5049;

  line-height: 1.8;

  padding-bottom: 4px;

}



/* ── Cert Wall ── */

.au-comply__certs-label {

  font-size: 10px;

  font-weight: 700;

  letter-spacing: 0.22em;

  text-transform: uppercase;

  color: #A63A2E;

  text-align: center;

  margin-bottom: 28px;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 12px;

}

.au-comply__certs-label::before, .au-comply__certs-label::after {

  content: ''; flex: 1;

  height: 1px;

  background: linear-gradient(to right, transparent, rgba(166, 58, 46,0.3));

}

.au-comply__certs-label::after {

  background: linear-gradient(to left, transparent, rgba(166, 58, 46,0.3));

}



.au-comply__certs {

  display: grid;

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

  gap: 2px;

  background: #E6DED0;

  margin-bottom: 60px;

}



.au-cert-card {

  background: #fff;

  padding: 36px 28px;

  display: flex;

  flex-direction: column;

  align-items: center;

  text-align: center;

  position: relative;

  overflow: hidden;

  transition: background 0.3s;

}



.au-cert-card::after {

  content: '';

  position: absolute;

  top: 0; left: 0; right: 0;

  height: 3px;

  background: #A63A2E;

  transform: scaleX(0);

  transform-origin: center;

  transition: transform 0.4s;

}

.au-cert-card:hover::after { transform: scaleX(1); }

.au-cert-card:hover { background: #F6F1E6; }



/* Cert logo placeholder */

.au-cert-card__logo {

  width: 80px; height: 80px;

  border-radius: 50%;

  background: linear-gradient(135deg, #20241E 0%, #1D201C 100%);

  display: flex;

  align-items: center;

  justify-content: center;

  color: #A63A2E;

  margin-bottom: 18px;

  font-family: 'Playfair Display', Georgia, serif;

  font-size: 1.1rem;

  font-weight: 700;

  letter-spacing: 0.04em;

  transition: transform 0.3s;

}

.au-cert-card:hover .au-cert-card__logo { transform: scale(1.06); }



/* If you have cert images, replace the logo div with:

   <img decoding="async"  alt="GRS"  data-src="cert-grs.png" class="au-cert-card__img lazyload" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="><noscript><img decoding="async" src="cert-grs.png" alt="GRS" class="au-cert-card__img"></noscript>

   .au-cert-card__img { width: 80px; height: 80px; object-fit: contain; }

*/



.au-cert-card__name {

  font-family: 'Playfair Display', Georgia, serif;

  font-size: 1.05rem;

  font-weight: 600;

  color: #1D201C;

  margin-bottom: 6px;

}



.au-cert-card__full {

  font-size: 11.5px;

  color: #7E827A;

  line-height: 1.55;

}



/* ── Quality Standards — 3-col ── */

.au-comply__standards {

  display: grid;

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

  gap: 24px;

}



.au-std-block {

  padding: 32px;

  background: #F6F1E6;

  border: 1px solid #E6DED0;

  position: relative;

  transition: border-color 0.3s, box-shadow 0.3s;

}

.au-std-block:hover {

  border-color: rgba(166, 58, 46,0.4);

  box-shadow: 0 4px 24px rgba(0,0,0,0.06);

}



/* Left accent bar */

.au-std-block::before {

  content: '';

  position: absolute;

  left: 0; top: 20%; bottom: 20%;

  width: 3px;

  background: linear-gradient(to bottom, transparent, #A63A2E, transparent);

}



.au-std-block__icon {

  width: 44px; height: 44px;

  background: rgba(29, 32, 28,0.07);

  display: flex;

  align-items: center;

  justify-content: center;

  color: #20241E;

  margin-bottom: 18px;

  border-radius: 2px;

  transition: background 0.3s;

}

.au-std-block:hover .au-std-block__icon {

  background: rgba(166, 58, 46,0.12);

  color: #A63A2E;

}



.au-std-block__title {

  font-family: 'Playfair Display', Georgia, serif;

  font-size: 1.15rem;

  font-weight: 600;

  color: #1D201C;

  margin-bottom: 10px;

}



.au-std-block__desc {

  font-size: 13px;

  color: #7E827A;

  line-height: 1.7;

}



.au-std-block__highlight {

  display: inline-block;

  margin-top: 12px;

  font-size: 11px;

  font-weight: 700;

  letter-spacing: 0.08em;

  text-transform: uppercase;

  color: #A63A2E;

  border-bottom: 1px solid rgba(166, 58, 46,0.4);

  padding-bottom: 2px;

}



/* ── Responsive ── */

@media (max-width: 1024px) {

  .au-comply__header { grid-template-columns: 1fr; gap: 24px; margin-bottom: 48px; }

  .au-comply__certs { grid-template-columns: repeat(2, 1fr); }

  .au-comply__standards { grid-template-columns: 1fr 1fr; }

}

@media (max-width: 768px) {

  .au-comply { padding: 64px 5%; }

  .au-comply__certs { grid-template-columns: repeat(2, 1fr); }

  .au-comply__standards { grid-template-columns: 1fr; }

}

@media (max-width: 480px) {

  .au-comply__certs { grid-template-columns: 1fr; }

}




    .au-team,

    .elementor-widget-html .au-team,

    .elementor-widget-container .au-team {

      position: relative;

      width: 100vw;

      max-width: 100vw;

      left: 50%;

      margin-left: -50vw;

      box-sizing: border-box;

    }

    

    .au-team {

      font-family: 'Mulish', sans-serif;

      background: #F6F1E6;

      padding: 100px 6%;

      position: relative;

      overflow: hidden;

    }

    

    /* Diagonal gold line decoration */

    .au-team::before {

      content: '';

      position: absolute;

      top: 0; left: 0; right: 0;

      height: 3px;

      background: linear-gradient(to right, #A63A2E 0%, #A63A2E 30%, transparent 100%);

    }

    

    .au-team__inner {

      max-width: 1200px;

      margin: 0 auto;

    }

    

    /* Top: label + title */

    .au-team__header {

      display: grid;

      grid-template-columns: 1fr 1fr;

      gap: 60px;

      align-items: end;

      margin-bottom: 72px;

    }

    

    .au-team__eyebrow {

      display: inline-flex;

      align-items: center;

      gap: 10px;

      font-size: 10px;

      font-weight: 700;

      letter-spacing: 0.26em;

      text-transform: uppercase;

      color: #A63A2E;

      margin-bottom: 14px;

    }

    .au-team__eyebrow::before {

      content: ''; width: 24px; height: 2px;

      background: #A63A2E; display: block;

    }

    

    .au-team__title {

      font-family: 'Playfair Display', Georgia, serif;

      font-size: clamp(1.9rem, 3vw, 3rem);

      font-weight: 700;

      color: #1D201C;

      line-height: 1.15;

      margin: 0;

    }

    .au-team__title em { font-style: italic; color: #A63A2E; }

    

    .au-team__header-right {

      padding-bottom: 4px;

    }

    .au-team__manifesto {

      font-family: 'Playfair Display', Georgia, serif;

      font-size: 1.3rem;

      font-style: italic;

      color: #20241E;

      line-height: 1.6;

      margin: 0 0 16px;

      border-left: 3px solid #A63A2E;

      padding-left: 20px;

    }

    .au-team__header-desc {

      font-size: 14px;

      color: #4C5049;

      line-height: 1.8;

    }

    

    /* Team grid */

    .au-team__grid {

      display: grid;

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

      gap: 20px;

      margin-bottom: 72px;

    }

    

    /* Member card */

    .au-member {

      position: relative;

      background: #fff;

      overflow: hidden;

      transition: box-shadow 0.35s, transform 0.35s;

    }

    .au-member:hover {

      box-shadow: 0 16px 48px rgba(0,0,0,0.1);

      transform: translateY(-4px);

    }

    

    /* Photo area */

    .au-member__photo {

      position: relative;

      aspect-ratio: 3/4;

      background: #DDD4C4;

      overflow: hidden;

    }

    

    /* Gold frame top line */

    .au-member__photo::before {

      content: '';

      position: absolute;

      top: 0; left: 0; right: 0;

      height: 3px;

      background: #A63A2E;

      z-index: 2;

      transform: scaleX(0);

      transform-origin: left;

      transition: transform 0.4s;

    }

    .au-member:hover .au-member__photo::before { transform: scaleX(1); }

    

    .au-member__photo img {

      width: 100%;

      height: 100%;

      object-fit: cover;

      object-position: top;

      display: block;

      transition: transform 0.6s ease;

    }

    .au-member:hover .au-member__photo img { transform: scale(1.04); }

    

    /* Photo placeholder */

    .au-member__placeholder {

      width: 100%;

      height: 100%;

      display: flex;

      flex-direction: column;

      align-items: center;

      justify-content: center;

      gap: 12px;

      color: #A09A92;

      font-size: 12px;

      text-align: center;

      padding: 20px;

    }

    .au-member__placeholder svg { opacity: 0.3; }

    

    /* Info area */

    .au-member__info {

      padding: 24px 22px;

    }

    

    .au-member__role {

      font-size: 9.5px;

      font-weight: 700;

      letter-spacing: 0.2em;

      text-transform: uppercase;

      color: #A63A2E;

      margin-bottom: 6px;

    }

    

    .au-member__name {

      font-family: 'Playfair Display', Georgia, serif;

      font-size: 1.2rem;

      font-weight: 600;

      color: #1D201C;

      margin-bottom: 8px;

      line-height: 1.2;

    }

    

    .au-member__desc {

      font-size: 12.5px;

      color: #7E827A;

      line-height: 1.65;

    }

    

    .au-member__years {

      display: inline-block;

      margin-top: 12px;

      font-size: 11px;

      font-weight: 700;

      color: #20241E;

      background: rgba(29, 32, 28,0.06);

      padding: 3px 10px;

      letter-spacing: 0.04em;

    }

    

    /* Vision block — full width */

    .au-team__vision {

      display: grid;

      grid-template-columns: 1fr 1fr;

      gap: 0;

      background: #20241E;

      position: relative;

      overflow: hidden;

    }

    

    /* Vision left: dark */

    .au-vision__left {

      padding: 56px 52px;

      position: relative;

    }

    

    .au-vision__left::after {

      content: '';

      position: absolute;

      right: 0; top: 10%; bottom: 10%;

      width: 1px;

      background: linear-gradient(to bottom, transparent, rgba(166, 58, 46,0.3), transparent);

    }

    

    .au-vision__label {

      font-size: 10px;

      font-weight: 700;

      letter-spacing: 0.26em;

      text-transform: uppercase;

      color: #A63A2E;

      margin-bottom: 16px;

      display: flex;

      align-items: center;

      gap: 10px;

    }

    .au-vision__label::before {

      content: ''; width: 20px; height: 1px;

      background: #A63A2E; display: block;

    }

    

    .au-vision__title {

      font-family: 'Playfair Display', Georgia, serif;

      font-size: clamp(1.6rem, 2.5vw, 2.4rem);

      font-weight: 700;

      color: #fff;

      line-height: 1.18;

      margin: 0 0 20px;

    }

    .au-vision__title em { font-style: italic; color: #A63A2E; }

    

    .au-vision__text {

      font-size: 14.5px;

      color: rgba(255,255,255,0.6);

      line-height: 1.8;

    }

    

    /* Vision right: values list */

    .au-vision__right {

      padding: 56px 52px;

    }

    

    .au-vision__values {

      display: flex;

      flex-direction: column;

      gap: 2px;

    }

    

    .au-value {

      display: flex;

      align-items: flex-start;

      gap: 16px;

      padding: 20px 0;

      border-bottom: 1px solid rgba(255,255,255,0.06);

    }

    .au-value:last-child { border-bottom: none; }

    

    .au-value__num {

      font-family: 'Playfair Display', Georgia, serif;

      font-size: 1.8rem;

      font-weight: 700;

      color: rgba(166, 58, 46,0.25);

      line-height: 1;

      flex-shrink: 0;

      width: 36px;

      margin-top: -4px;

    }

    

    .au-value__text {}

    .au-value__title {

      font-size: 13px;

      font-weight: 700;

      color: rgba(255,255,255,0.85);

      margin-bottom: 4px;

      letter-spacing: 0.03em;

    }

    .au-value__desc {

      font-size: 12.5px;

      color: rgba(255,255,255,0.45);

      line-height: 1.6;

    }

    

    /* ── Responsive ── */

    @media (max-width: 1100px) {

      .au-team__grid { grid-template-columns: repeat(2, 1fr); }

    }

    @media (max-width: 900px) {

      .au-team__vision { grid-template-columns: 1fr; }

      .au-vision__left::after { display: none; }

    }

    @media (max-width: 768px) {

      .au-team { padding: 64px 5%; }

      .au-team__header { grid-template-columns: 1fr; gap: 28px; margin-bottom: 48px; }

      .au-vision__left, .au-vision__right { padding: 40px 32px; }

    }

    @media (max-width: 560px) {

      .au-team__grid { grid-template-columns: 1fr; max-width: 380px; margin: 0 auto 56px; }

    }

    


/* 左列内容撑满整列，抵消 Elementor 默认内边距 */

.kf8l {

  font-family: 'Mulish', sans-serif;

  padding: 72px 52px 72px 60px;

  min-height: 700px;

  display: flex;

  flex-direction: column;

  justify-content: center;

  position: relative;

  /* 向四边扩展，完全覆盖列的内边距区域 */

  margin: -20px;

}



/* 左侧金色竖线 */

.kf8l::before {

  content: '';

  position: absolute;

  left: 0; top: 12%; bottom: 12%;

  width: 3px;

  background: linear-gradient(

    to bottom,

    transparent,

    #A63A2E 25%,

    #A63A2E 75%,

    transparent

  );

  opacity: .5;

}



/* 顶部标签 */

.kf8l-tag {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  background: rgba(166, 58, 46,.14);

  border: 1px solid rgba(166, 58, 46,.38);

  color: #C9695A;

  padding: 6px 15px;

  border-radius: 2px;

  font-size: .72rem;

  font-weight: 700;

  letter-spacing: .14em;

  text-transform: uppercase;

  margin-bottom: 28px;

  width: fit-content;

}

.kf8l-dot {

  width: 6px; height: 6px;

  background: #A63A2E;

  border-radius: 50%;

  animation: kf8ldot 2s infinite;

}

@keyframes kf8ldot {

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

  50%      { opacity:.3; transform:scale(1.8); }

}



/* H2 */

.kf8l h2 {

  font-family: 'Playfair Display', serif;

  font-size: clamp(1.9rem, 2.4vw, 2.7rem);

  font-weight: 700;

  color: #fff;

  line-height: 1.15;

  margin: 0 0 14px;

}

.kf8l h2 em { font-style: normal; color: #A63A2E; }



/* 副标题 */

.kf8l-sub {

  font-size: .95rem;

  color: rgba(255,255,255,.52);

  line-height: 1.75;

  margin: 0 0 32px;

  font-weight: 300;

  max-width: 380px;

}



/* 金色分割线 */

.kf8l-rule {

  width: 36px; height: 2px;

  background: #A63A2E;

  margin-bottom: 30px;

  opacity: .65;

}



/* Trust list */

.kf8l-trust {

  list-style: none;

  padding: 0; margin: 0 0 40px;

  display: flex;

  flex-direction: column;

  gap: 13px;

}

.kf8l-trust li {

  display: flex;

  align-items: flex-start;

  gap: 11px;

  color: rgba(255,255,255,.75);

  font-size: .88rem;

  line-height: 1.5;

}

.kf8l-chk {

  width: 21px; height: 21px;

  background: rgba(166, 58, 46,.12);

  border: 1px solid rgba(166, 58, 46,.36);

  border-radius: 50%;

  display: flex; align-items: center; justify-content: center;

  flex-shrink: 0;

  color: #A63A2E;

  font-size: .6rem;

  font-weight: 800;

  margin-top: 1px;

}



/* Stats */

.kf8l-stats {

  display: flex;

  padding-top: 28px;

  border-top: 1px solid rgba(255,255,255,.08);

  margin-bottom: 32px;

}

.kf8l-stat {

  flex: 1;

  padding-right: 20px;

  border-right: 1px solid rgba(255,255,255,.07);

  margin-right: 20px;

}

.kf8l-stat:last-child {

  border-right: none; margin-right: 0; padding-right: 0;

}

.kf8l-stat-num {

  font-family: 'Playfair Display', serif;

  font-size: 1.65rem;

  font-weight: 700;

  color: #A63A2E;

  line-height: 1;

  margin-bottom: 5px;

}

.kf8l-stat-lbl {

  font-size: .71rem;

  color: rgba(255,255,255,.35);

  line-height: 1.4;

}



/* Location */

.kf8l-loc {

  display: inline-flex;

  align-items: center;

  gap: 13px;

  background: rgba(255,255,255,.04);

  border: 1px solid rgba(255,255,255,.09);

  padding: 13px 18px;

  border-radius: 5px;

  width: fit-content;

}

.kf8l-loc-flag { font-size: 1.4rem; line-height: 1; }

.kf8l-loc-name {

  font-size: .88rem; font-weight: 700;

  color: #fff; display: block; margin-bottom: 2px;

}

.kf8l-loc-sub {

  font-size: .72rem;

  color: rgba(255,255,255,.35);

}



@media (max-width: 900px) {

  .kf8l {

    min-height: auto;

    padding: 56px 32px;

    margin: -10px;

  }

  .kf8l-stats { flex-wrap: wrap; gap: 20px; }

  .kf8l-stat { flex: 1 1 40%; border-right: none; margin-right: 0; }

}




.au-cta,

.elementor-widget-html .au-cta,

.elementor-widget-container .au-cta {

  position: relative;

  width: 100vw;

  max-width: 100vw;

  left: 50%;

  margin-left: -50vw;

  box-sizing: border-box;

}



.au-cta {

  font-family: 'Mulish', sans-serif;

  position: relative;

  overflow: hidden;

  min-height: 60vh;

  display: flex;

  align-items: center;

  justify-content: center;

  text-align: center;

  background: #1D201C;

}



/* Full-bleed background image */

.au-cta__bg {

  position: absolute;

  inset: 0;

  background-image: url("../YOUR-FABRIC-CLOSEUP-OR-FACTORY-IMAGE.jpg"); /* 替换为图片 */

  background-size: cover;

  background-position: center;

  filter: brightness(0.4) saturate(0.7);

}



/* Layered overlay */

.au-cta__overlay {

  position: absolute;

  inset: 0;

  background:

    linear-gradient(to bottom, rgba(29, 32, 28,0.5) 0%, rgba(29, 32, 28,0.75) 100%);

}



/* Subtle grid texture */

.au-cta__texture {

  position: absolute;

  inset: 0;

  background-image:

    linear-gradient(rgba(255,255,255,0.015) 1px, transparent 1px),

    linear-gradient(90deg, rgba(255,255,255,0.015) 1px, transparent 1px);

  background-size: 60px 60px;

  pointer-events: none;

}



/* Gold top border */

.au-cta__border-top {

  position: absolute;

  top: 0; left: 0; right: 0;

  height: 4px;

  background: linear-gradient(to right, transparent, #A63A2E 25%, #A63A2E 75%, transparent);

}



/* Gold bottom border */

.au-cta__border-bottom {

  position: absolute;

  bottom: 0; left: 0; right: 0;

  height: 4px;

  background: linear-gradient(to right, transparent, rgba(166, 58, 46,0.5) 25%, rgba(166, 58, 46,0.5) 75%, transparent);

}



.au-cta__inner {

  position: relative;

  z-index: 2;

  padding: 100px 6%;

  max-width: 900px;

  margin: 0 auto;

}



/* Ornament */

.au-cta__ornament {

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 14px;

  margin-bottom: 28px;

}

.au-cta__orn-line {

  width: 56px; height: 1px;

}

.au-cta__orn-line:first-child { background: linear-gradient(to right, transparent, #A63A2E); }

.au-cta__orn-line:last-child { background: linear-gradient(to left, transparent, #A63A2E); }

.au-cta__orn-diamond {

  width: 9px; height: 9px;

  background: #A63A2E;

  transform: rotate(45deg);

}



.au-cta__eyebrow {

  font-size: 10px;

  font-weight: 700;

  letter-spacing: 0.3em;

  text-transform: uppercase;

  color: #A63A2E;

  margin-bottom: 20px;

}



.au-cta__headline {

  font-family: 'Playfair Display', Georgia, serif;

  font-size: clamp(2.2rem, 5vw, 4.5rem);

  font-weight: 700;

  color: #fff;

  line-height: 1.1;

  margin: 0 0 16px;

  text-shadow: 0 4px 24px rgba(0,0,0,0.3);

}



.au-cta__headline em {

  font-style: italic;

  color: #A63A2E;

}



.au-cta__sub {

  font-size: 1rem;

  color: rgba(255,255,255,0.65);

  line-height: 1.75;

  margin-bottom: 52px;

  max-width: 620px;

  margin-left: auto;

  margin-right: auto;

}



/* Button group */

.au-cta__btns {

  display: flex;

  gap: 16px;

  justify-content: center;

  flex-wrap: wrap;

  margin-bottom: 56px;

}



.au-cta-btn-primary {

  display: inline-flex;

  align-items: center;

  gap: 10px;

  padding: 16px 36px;

  background: #A63A2E;

  color: #fff;

  font-family: 'Mulish', sans-serif;

  font-size: 12.5px;

  font-weight: 700;

  letter-spacing: 0.1em;

  text-transform: uppercase;

  text-decoration: none;

  border: 2px solid #A63A2E;

  transition: background 0.25s, transform 0.2s, box-shadow 0.25s;

}

.au-cta-btn-primary:hover {

  background: #8E2A22;

  border-color: #8E2A22;

  transform: translateY(-3px);

  box-shadow: 0 14px 36px rgba(166, 58, 46,0.3);

}



.au-cta-btn-secondary {

  display: inline-flex;

  align-items: center;

  gap: 10px;

  padding: 16px 36px;

  background: rgba(255,255,255,0.1);

  color: #fff;

  font-family: 'Mulish', sans-serif;

  font-size: 12.5px;

  font-weight: 600;

  letter-spacing: 0.1em;

  text-transform: uppercase;

  text-decoration: none;

  border: 2px solid rgba(255,255,255,0.4);

  backdrop-filter: blur(6px);

  transition: background 0.25s, border-color 0.25s, transform 0.2s;

}

.au-cta-btn-secondary:hover {

  background: rgba(255,255,255,0.18);

  border-color: rgba(255,255,255,0.75);

  transform: translateY(-2px);

}



/* Trust indicators */

.au-cta__trust {

  display: flex;

  align-items: center;

  justify-content: center;

  gap: clamp(16px, 4vw, 44px);

  flex-wrap: wrap;

  padding-top: 36px;

  border-top: 1px solid rgba(255,255,255,0.1);

}



.au-trust-pill {

  display: flex;

  align-items: center;

  gap: 8px;

  font-size: 12px;

  font-weight: 500;

  color: rgba(255,255,255,0.6);

  white-space: nowrap;

}

.au-trust-pill svg { color: #A63A2E; flex-shrink: 0; }



/* ── Responsive ── */

@media (max-width: 768px) {

  .au-cta__inner { padding: 72px 5%; }

  .au-cta__btns { flex-direction: column; align-items: center; }

  .au-cta-btn-primary, .au-cta-btn-secondary {

    width: 100%; max-width: 360px; justify-content: center;

  }

  .au-cta__trust { gap: 14px; }

  .au-trust-pill { font-size: 11px; }

}

/* Standalone theme pages do not need the Elementor viewport escape. */
.au-hero {
  width: 100%;
  max-width: 100%;
  left: auto;
  right: auto;
  margin-left: 0;
  margin-right: 0;
}

.au-vi-step__tags { display: none; }



