@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600;700&family=Inter:wght@500;600;700;800&display=swap');

.rj-public-header,
.rj-public-header *{box-sizing:border-box}
.rj-public-header{
  position:sticky;
  top:0;
  z-index:1000;
  width:100%;
  background:rgba(247,244,238,.97);
  border-bottom:1px solid rgba(31,61,43,.08);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  color:#1F3D2B;
}
.rj-public-header__inner{
  width:min(1136px,calc(100% - 48px));
  min-height:76px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
}
.rj-public-header__brand{
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  flex:0 0 auto;
  color:#1F3D2B !important;
  text-decoration:none !important;
  line-height:1;
  margin:0;
  padding:0;
}
.rj-public-header__name{
  display:block;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:24px;
  line-height:.95;
  font-weight:700;
  letter-spacing:.005em;
  color:#1F3D2B;
  white-space:nowrap;
}
.rj-public-header__signature{
  display:block;
  margin-top:5px;
  font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size:11px;
  line-height:1;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#C9A961;
  white-space:nowrap;
}
.rj-public-header__nav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:28px;
  margin-left:auto;
}
.rj-public-header__nav a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:#1F3D2B !important;
  text-decoration:none !important;
  font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size:14px;
  line-height:1;
  font-weight:700;
  letter-spacing:0;
  text-transform:none;
  opacity:.9;
  transition:opacity .18s ease,color .18s ease,border-color .18s ease,background .18s ease;
}
.rj-public-header__nav a:hover,
.rj-public-header__nav a:focus-visible{
  opacity:1;
  color:#163F37 !important;
}
.rj-public-header__nav .rj-public-header__cta{
  min-height:40px;
  padding:0 17px;
  border:1px solid #1F5A4E;
  border-radius:999px;
  color:#1F5A4E !important;
  background:transparent;
}
.rj-public-header__nav .rj-public-header__cta:hover,
.rj-public-header__nav .rj-public-header__cta:focus-visible{
  background:#1F5A4E;
  color:#F7F4EE !important;
}
.rj-public-header__toggle{
  display:none;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  padding:0;
  margin:0;
  border:1px solid rgba(31,90,78,.35);
  border-radius:999px;
  background:transparent;
  color:#1F5A4E;
  font-family:'Inter',system-ui,sans-serif;
  font-size:20px;
  line-height:1;
  cursor:pointer;
}
@media (max-width:900px){
  .rj-public-header__inner{width:min(100% - 36px,1136px);min-height:70px;gap:18px}
  .rj-public-header__toggle{display:inline-flex;margin-left:auto}
  .rj-public-header__nav{
    display:none;
    position:absolute;
    top:100%;
    left:0;
    right:0;
    width:100%;
    padding:18px;
    background:#F7F4EE;
    border-top:1px solid rgba(31,61,43,.08);
    border-bottom:1px solid rgba(31,61,43,.10);
    box-shadow:0 16px 30px rgba(31,61,43,.08);
    flex-direction:column;
    align-items:stretch;
    gap:4px;
  }
  .rj-public-header.is-open .rj-public-header__nav{display:flex}
  .rj-public-header__nav a{justify-content:flex-start;min-height:44px;padding:0 8px}
  .rj-public-header__nav .rj-public-header__cta{justify-content:center;margin-top:8px}
}
@media (max-width:520px){
  .rj-public-header__inner{width:calc(100% - 28px)}
  .rj-public-header__name{font-size:21px}
  .rj-public-header__signature{font-size:9.5px;letter-spacing:.12em}
}

/* Isolation layer: keeps this public header identical even on legacy pages with aggressive nav rules. */
.rj-public-header .rj-public-header__nav{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  gap:28px !important;
  margin-left:auto !important;
  width:auto !important;
  padding:0 !important;
  position:static !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.rj-public-header .rj-public-header__nav a,
.rj-public-header .rj-public-header__nav a:not(.nav-cta){
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  max-width:none !important;
  min-height:42px !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#1F3D2B !important;
  font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  opacity:.9 !important;
}
.rj-public-header .rj-public-header__nav .rj-public-header__cta,
.rj-public-header .rj-public-header__nav .rj-public-header__cta:not(.nav-cta){
  min-height:40px !important;
  padding:0 17px !important;
  border:1px solid #1F5A4E !important;
  border-radius:999px !important;
  color:#1F5A4E !important;
  background:transparent !important;
}
.rj-public-header .rj-public-header__nav .rj-public-header__cta:hover,
.rj-public-header .rj-public-header__nav .rj-public-header__cta:focus-visible{
  background:#1F5A4E !important;
  color:#F7F4EE !important;
}
@media (max-width:900px){
  .rj-public-header .rj-public-header__nav{
    display:none !important;
    position:absolute !important;
    top:100% !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    max-width:none !important;
    max-height:none !important;
    padding:18px !important;
    margin:0 !important;
    background:#F7F4EE !important;
    border-top:1px solid rgba(31,61,43,.08) !important;
    border-bottom:1px solid rgba(31,61,43,.10) !important;
    border-radius:0 !important;
    box-shadow:0 16px 30px rgba(31,61,43,.08) !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:4px !important;
  }
  .rj-public-header.is-open .rj-public-header__nav{display:flex !important}
  .rj-public-header .rj-public-header__nav a,
  .rj-public-header .rj-public-header__nav a:not(.nav-cta){
    justify-content:flex-start !important;
    width:100% !important;
    min-height:44px !important;
    padding:0 8px !important;
  }
  .rj-public-header .rj-public-header__nav .rj-public-header__cta,
  .rj-public-header .rj-public-header__nav .rj-public-header__cta:not(.nav-cta){
    justify-content:center !important;
    margin-top:8px !important;
    width:100% !important;
  }
}

/* Área reservada: utility button restored after the public-header standardization. */
.rj-public-header .rj-public-header__nav .rj-public-header__login,
.rj-public-header .rj-public-header__nav .rj-public-header__login:not(.nav-cta){
  min-height:40px !important;
  padding:0 17px !important;
  border:1px solid #C9A961 !important;
  border-radius:999px !important;
  background:#C9A961 !important;
  color:#1F3D2B !important;
  font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:800 !important;
  text-decoration:none !important;
  opacity:1 !important;
}
.rj-public-header .rj-public-header__nav .rj-public-header__login:hover,
.rj-public-header .rj-public-header__nav .rj-public-header__login:focus-visible{
  background:#B99553 !important;
  border-color:#B99553 !important;
  color:#173A31 !important;
}
@media (max-width:900px){
  .rj-public-header .rj-public-header__nav .rj-public-header__login,
  .rj-public-header .rj-public-header__nav .rj-public-header__login:not(.nav-cta){
    justify-content:center !important;
    width:100% !important;
    margin-top:4px !important;
  }
}
