/* REDACTED INT. — minimal cinematic motion */
:root{
  --ink:#0b0f14;
  --slateDeep:#1f2937;
  --brass:#c9a24d;
  --brassSoft: rgba(201,162,77,0.18);
}
html{scroll-behavior:smooth;}
::selection{background: rgba(201,162,77,.22);}
.reveal{opacity:0; transform: translateY(14px); transition: opacity .7s ease, transform .7s ease;}
.reveal.in{opacity:1; transform: translateY(0);}
.glow{
  box-shadow: 0 0 0 1px rgba(201,162,77,.18), 0 18px 60px rgba(0,0,0,.45);
}
.gold-divider{
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201,162,77,.9), transparent);
}
.nav-underline{
  position:relative;
}
.nav-underline:after{
  content:'';
  position:absolute;
  left:0; bottom:-6px;
  width:0; height:1px;
  background: var(--brass);
  transition: width .25s ease;
}
.nav-underline:hover:after{width:100%;}
.hero-grain{
  background-image: radial-gradient(transparent 1px, rgba(0,0,0,.15) 1px);
  background-size: 3px 3px;
  mix-blend-mode: overlay;
  opacity: .25;
}


/* Dropdown navigation */
.nav-dd{position:relative;}
.nav-dd::after{
  /* Hover-bridge so the menu doesn't collapse while moving cursor into the dropdown */
  content:'';
  position:absolute;
  left:0;
  top:100%;
  width:100%;
  height:14px;
}
.dd-panel{
  position:absolute;
  top: 100%;
  margin-top: 10px;
  left: 0;
  min-width: 280px;
  padding: 10px;
  border-radius: 14px;
  background: rgba(11,15,20,.96);
  border: 1px solid rgba(201,162,77,.18);
  box-shadow: 0 18px 60px rgba(0,0,0,.55);
  backdrop-filter: blur(10px);
  opacity: 0;
  transform: translateY(10px);
  pointer-events: none;
  transition: opacity .26s ease, transform .26s ease;
  transition-delay: .12s; /* forgiving close */
  z-index: 60;
}
.nav-dd:hover .dd-panel,
.nav-dd:focus-within .dd-panel{
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
  transition-delay: 0s; /* open immediately */
}
.dd-link{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:10px 10px;
  border-radius: 12px;
  color: rgba(226,232,240,.95);
}
.dd-link:hover{background: rgba(201,162,77,.10); color: rgba(226,232,240,1);}
.dd-small{font-size:12px; color: rgba(148,163,184,1);}
.dd-title{font-weight:600;}

/* v19 hero/nav fixes */
header { position: sticky; top: 0; z-index: 1000; }
.nav-dd-panel { z-index: 1100; }
.hero { padding-top: 5.25rem; } /* pushes hero below sticky header */
@media (max-width: 1024px){
  .hero { padding-top: 5.25rem; }
}
/* keep hero headings from feeling oversized on smaller screens */
.hero h1 { font-size: clamp(1.85rem, 3.2vw, 2.55rem); line-height: 1.06; }


/* FAQ accordion */
.faq-item{border:1px solid rgba(201,162,77,.14); border-radius:18px; background:rgba(255,255,255,.02); overflow:hidden;}
.faq-item + .faq-item{margin-top:12px;}
.faq-q{display:flex; align-items:center; justify-content:space-between; gap:18px; width:100%; padding:18px 20px; text-align:left; font-weight:600; color:rgba(226,232,240,.96);}
.faq-q i{transition: transform .25s ease, opacity .25s ease; opacity:.72;}
.faq-item[open] .faq-q i{transform: rotate(180deg); opacity:1;}
.faq-a{padding:0 20px 18px 20px; color:rgba(203,213,225,.92); line-height:1.7;}
.panel-card{border:1px solid rgba(201,162,77,.14); border-radius:24px; background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));}
.service-chip{display:inline-flex; align-items:center; gap:.55rem; border:1px solid rgba(201,162,77,.18); border-radius:999px; padding:.55rem .9rem; background:rgba(255,255,255,.02); color:rgba(226,232,240,.9); font-size:.92rem;}
.soft-grid{display:grid; grid-template-columns:repeat(1,minmax(0,1fr)); gap:1rem;}
@media (min-width: 768px){.soft-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}


/* Requested nav spacing */
.nav-contact-cta{margin-left:1cm;}
@media (max-width: 640px){.nav-contact-cta{margin-left:0;}}

/* Article carousel */
.article-hub{border-top:1px solid rgba(31,41,55,.7);}
.article-track-wrap{position:relative; overflow-x:auto; overflow-y:hidden; margin-top:2.5rem; padding:0; -ms-overflow-style:none; scrollbar-width:none;}
.article-track-wrap::-webkit-scrollbar{display:none; height:0;}
.article-track-wrap[data-carousel-ready]{cursor:grab;}
.article-track-wrap[data-carousel-ready]:active{cursor:grabbing;}
.article-track{display:flex; gap:1rem; width:max-content; will-change:transform;}
.article-track.is-paused{opacity:1;}
.article-card{width:290px; flex:0 0 auto; border:1px solid rgba(201,162,77,.14); border-radius:22px; background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015)); overflow:hidden; color:inherit; text-decoration:none; box-shadow:0 18px 60px rgba(0,0,0,.22);}
.article-card:hover{border-color:rgba(201,162,77,.34); transform:translateY(-2px); transition:transform .22s ease, border-color .22s ease;}
.article-preview{aspect-ratio: 3 / 4; background:rgba(255,255,255,.02); overflow:hidden; border-bottom:1px solid rgba(201,162,77,.12);}
.article-preview img{width:100%; height:100%; object-fit:cover; object-position:top center; display:block;}
.article-body{padding:1rem 1rem 1.15rem;}
.article-kicker{font-size:.7rem; letter-spacing:.28em; text-transform:uppercase; color:rgba(201,162,77,.95);}
.article-title{font-size:1rem; line-height:1.4; color:rgba(241,245,249,.98); font-weight:600; margin-top:.55rem;}
.article-meta{font-size:.86rem; color:rgba(148,163,184,1); margin-top:.5rem;}
.article-empty{margin-top:2rem; border:1px dashed rgba(201,162,77,.24); border-radius:20px; padding:1.15rem 1.25rem; color:rgba(148,163,184,1); background:rgba(255,255,255,.02);}
.article-guide-inline{display:inline-flex; align-items:center; gap:.55rem; border:1px solid rgba(201,162,77,.18); border-radius:999px; padding:.75rem 1rem; background:rgba(255,255,255,.02); color:rgba(226,232,240,.95); text-decoration:none; font-weight:600;}
.article-guide-inline:hover{border-color:rgba(201,162,77,.42);}
.article-viewer-shell{min-height:100vh; background:var(--ink); color:rgba(226,232,240,.96);}
.article-viewer-frame{width:100%; height:calc(100vh - 210px); border:1px solid rgba(201,162,77,.14); border-radius:22px; background:#fff;}
@media (max-width: 768px){.article-viewer-frame{height:calc(100vh - 240px);}}



.article-guide-cta{border:1px solid var(--brass); border-radius:999px; padding:1rem 1.35rem; background:var(--brass); color:#111111; text-decoration:none; font-weight:700; transition:opacity .2s ease, transform .2s ease, box-shadow .2s ease; box-shadow:0 10px 30px rgba(201,162,77,.18);}
.article-guide-cta:hover{opacity:.92; transform:translateY(-1px);}
.article-guide-inline[data-guide-trigger]{border-color:var(--brass); background:var(--brass); color:#111111;}
.article-guide-inline[data-guide-trigger]:hover{opacity:.92; border-color:var(--brass);}


/* Ads/article funnel refinements */
.article-card,
.article-card *{box-sizing:border-box;}
.article-card{width:290px; max-width:290px; min-width:290px; flex:0 0 290px; display:flex; flex-direction:column; align-self:stretch; font-family:'Inter',sans-serif;}
.article-card .article-body{display:flex; flex-direction:column; gap:.45rem; min-height:176px;}
.article-card .article-kicker{font-family:'Inter',sans-serif; font-size:.72rem; line-height:1.2; letter-spacing:.28em;}
.article-card .article-title{font-family:'Cinzel',serif; font-size:clamp(1rem,1.15vw,1.2rem)!important; line-height:1.08!important; letter-spacing:.01em; text-wrap:balance; word-break:normal; overflow-wrap:anywhere; display:-webkit-box; -webkit-line-clamp:6; -webkit-box-orient:vertical; overflow:hidden; max-height:7.1em;}
.article-card .article-meta{font-family:'Inter',sans-serif; font-size:.86rem; line-height:1.35; margin-top:auto;}
.article-track{align-items:stretch;}
.article-track-wrap{overflow:hidden;}

/* Stronger site-wide enquiry and guide CTAs */
.ri-cta-primary,.ri-cta-secondary{display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:.65rem !important;border-radius:999px !important;padding:1rem 1.5rem !important;min-height:56px !important;font-weight:700 !important;text-decoration:none !important;transition:opacity .2s ease, transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease !important;font-size:1rem !important;line-height:1.1 !important;letter-spacing:.01em !important;}
.ri-cta-primary{background:var(--brass) !important;color:#111111 !important;border:1px solid var(--brass) !important;box-shadow:0 14px 36px rgba(201,162,77,.22) !important;}
.ri-cta-primary:hover{opacity:.94;transform:translateY(-1px);box-shadow:0 18px 40px rgba(201,162,77,.28);}
.ri-cta-secondary{background:rgba(255,255,255,.03) !important;color:#f8fafc !important;border:1px solid rgba(201,162,77,.28) !important;box-shadow:0 10px 28px rgba(0,0,0,.18) !important;}
.ri-cta-secondary:hover{border-color:rgba(201,162,77,.54);transform:translateY(-1px);box-shadow:0 14px 34px rgba(0,0,0,.24);}
.ri-cta-primary.w-full,.ri-cta-secondary.w-full{width:100%;}
.ri-cta-stack{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;}
.ri-cta-large{padding:1.1rem 1.75rem !important;min-height:60px !important;font-size:1.02rem !important;}
.article-guide-cta{padding:1.1rem 1.7rem !important;min-height:60px !important;font-size:1.02rem !important;box-shadow:0 16px 38px rgba(201,162,77,.24) !important;}
.article-guide-cta:hover{box-shadow:0 20px 44px rgba(201,162,77,.30);}
.article-hub-early{padding-top:4.25rem;padding-bottom:4.5rem;}
@media (max-width: 640px){
  .ri-cta-primary,.ri-cta-secondary{width:100%;padding:1rem 1.25rem;min-height:54px;}
  .article-hub-early{padding-top:3.25rem;padding-bottom:3.5rem;}
}


/* Landing page reinforcement */
.landing-band{border-top:1px solid rgba(201,162,77,.12);border-bottom:1px solid rgba(201,162,77,.12);background:linear-gradient(180deg,rgba(8,12,17,.96),rgba(11,15,20,.98));}
.landing-pain{background:linear-gradient(180deg,rgba(201,162,77,.08),rgba(201,162,77,.02));border:1px solid rgba(201,162,77,.16);border-radius:24px;box-shadow:0 16px 60px rgba(0,0,0,.28);}
.landing-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:2rem;}
.landing-step{background:rgba(255,255,255,.02);border:1px solid rgba(201,162,77,.12);border-radius:18px;padding:1.1rem 1rem;}
.landing-step .num{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:#c9a24d;display:block;margin-bottom:.55rem;}
.landing-proof{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:2rem;}
.landing-proof .panel-card{min-height:100%;}
.ri-cta-primary,.ri-cta-secondary{font-size:1rem;min-height:54px;border-radius:999px;}
.ri-cta-primary.ri-cta-large,.ri-cta-secondary.ri-cta-large{min-height:60px;padding-left:1.4rem;padding-right:1.4rem;font-size:1.03rem;}
.landing-mini-list{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.1rem;}
.landing-mini-list span{border:1px solid rgba(201,162,77,.16);padding:.65rem .9rem;border-radius:999px;background:rgba(255,255,255,.02);color:#d9dee7;font-size:.92rem;}
