/* ==========================================================================
   NAUTILUS — Domains · Section 4: Closing band
   Wine background so it stands apart from the black footer (same band as ADCS).
   ========================================================================== */
.ntl-cta{ --cta-wine: var(--theme-color, #79182d); --cta-hfont: var(--heading-font, 'Exo 2', sans-serif); --cta-hw: var(--font-weight-heading, 600);
  --cta-ease: cubic-bezier(.16, 1, .3, 1); background: #111216; color: #fff; padding: 96px 0; }
.ntl-cta--wine{ position: relative; overflow: hidden; background: var(--cta-wine);
  background-image: radial-gradient(80% 120% at 100% 0%, #A11A3D 0%, rgba(161,26,61,0) 60%); }
.ntl-cta--wine::after{ content: ""; position: absolute; right: -120px; top: 50%; width: 620px; height: 620px; transform: translateY(-50%);
  border-radius: 50%; border: 1px solid rgba(255,255,255,.12); pointer-events: none; }
.ntl-cta--wine::before{ content: ""; position: absolute; right: 20px; top: 50%; width: 340px; height: 340px; transform: translateY(-50%);
  border-radius: 50%; border: 1px dashed rgba(255,255,255,.14); pointer-events: none; }
.ntl-cta--wine .container{ position: relative; z-index: 1; }
.ntl-cta-inner{ display: grid; grid-template-columns: 1fr auto; gap: 48px; align-items: center; }
.ntl-cta h2{ margin: 0 0 12px; font-family: var(--cta-hfont); font-weight: var(--cta-hw); font-size: clamp(28px, 3.2vw, 44px); line-height: 1.08;
  text-transform: uppercase; color: #fff; }
.ntl-cta p{ margin: 0; font-size: 18px; line-height: 1.5; color: rgba(255,255,255,.85); }
.ntl-cta-btn{ display: inline-flex; align-items: center; text-decoration: none; font-family: var(--cta-hfont); font-weight: var(--cta-hw);
  font-size: 13px; letter-spacing: .1em; text-transform: uppercase; }
.ntl-cta-btn-label{ padding: 16px 32px; border-radius: 40px; background: #fff; color: #111216; transition: background .3s, color .3s; }
.ntl-cta-btn-arrow{ width: 50px; height: 50px; border-radius: 50%; margin-left: -8px; display: flex; align-items: center; justify-content: center;
  background: #fff; color: #111216; transition: transform .35s var(--cta-ease), background .3s, color .3s; }
.ntl-cta-btn-arrow svg{ width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ntl-cta-btn:hover .ntl-cta-btn-arrow{ transform: translateX(4px) rotate(45deg); }
.ntl-cta-btn:hover .ntl-cta-btn-label, .ntl-cta-btn:hover .ntl-cta-btn-arrow{ background: #111216; color: #fff; }   /* ink on wine */
.ntl-cta-btn:focus-visible{ outline: none; } .ntl-cta-btn:focus-visible .ntl-cta-btn-label{ outline: 2px solid #fff; outline-offset: 3px; }
@media (max-width: 991px){ .ntl-cta{ padding: 72px 0; } .ntl-cta-inner{ grid-template-columns: 1fr; gap: 30px; } }
