/* Shared editorial typography, surfaces and compact footer for public pages. */
html { min-height: 100%; background: #191a17; }
body:not(.rr-home) {
  display: flex;
  min-height: 100vh;
  min-height: 100svh;
  flex-direction: column;
  background: #f6f4ef !important;
  color: #36352f;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7;
}
body:not(.rr-home).blog-page { background: #fff !important; }
body:not(.rr-home) h1,
body:not(.rr-home) h2,
body:not(.rr-home) h3,
body:not(.rr-home) h4,
body:not(.rr-home) h5 {
  color: #282720;
  font-family: "Bodoni Moda", Georgia, serif !important;
  font-weight: 400 !important;
  line-height: 1.16 !important;
}
body:not(.rr-home) h1 { font-size: clamp(38px, 5vw, 62px) !important; }
body:not(.rr-home) h2 { font-size: clamp(30px, 3.6vw, 44px) !important; }
body:not(.rr-home) h3 { font-size: clamp(21px, 2.2vw, 28px) !important; }
body:not(.rr-home) h4,
body:not(.rr-home) h5 { font-size: clamp(17px, 1.7vw, 21px) !important; }
body:not(.rr-home) h6 {
  color: #77746c !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: .12em;
  line-height: 1.5 !important;
  text-transform: uppercase;
}
body:not(.rr-home) main p,
body:not(.rr-home) main li,
body:not(.rr-home) .about-services p,
body:not(.rr-home) .about-services li {
  color: #66645d;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.85;
}
body:not(.rr-home) .whole-wrap,
body:not(.rr-home) .generic-content,
body:not(.rr-home) .about-generic-area,
body:not(.rr-home) .about-services { background-color: #f6f4ef !important; }
body:not(.rr-home) .card {
  border: 0 !important;
  border-radius: 0;
  background: rgba(255,255,255,.48);
  box-shadow: none;
}
body:not(.rr-home) .card-title,
body:not(.rr-home) .card-title a { color: #292821 !important; font-family: "Bodoni Moda", Georgia, serif !important; font-weight: 400 !important; }
body:not(.rr-home) .btn,
body:not(.rr-home) button:not(.hamburger) {
  border-radius: 0 !important;
  box-shadow: none;
  font-family: "Manrope", Arial, sans-serif;
  letter-spacing: .08em;
}

body:not(.rr-home) .footer-area {
  width: 100%;
  flex-shrink: 0;
  margin-top: auto !important;
  padding: 20px 5.5vw 14px !important;
  border-top: 1px solid rgba(245,243,238,.12);
  background: #191a17 !important;
  color: #c1beb5;
}
body:not(.rr-home) .footer-area > .container {
  width: 100% !important;
  max-width: 1080px !important;
  padding: 0 !important;
}
body:not(.rr-home) .footer-area .footer-bottom {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
  align-items: center;
  gap: 16px;
  margin: 0 !important;
  padding: 0 !important;
}
body:not(.rr-home) .footer-area .footer-bottom > div {
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
body:not(.rr-home) .footer-area .logo { margin: 0 !important; }
body:not(.rr-home) .footer-area .logo a {
  color: #f6f4ef !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: .18em;
}
body:not(.rr-home) .footer-area .footer-social {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin: 0 !important;
  text-align: center !important;
}
body:not(.rr-home) .footer-area .footer-social a {
  padding: 4px 7px !important;
  color: #f6f4ef !important;
  font-size: 13px !important;
}
body:not(.rr-home) .footer-area .footer-social i { color: inherit !important; }
body:not(.rr-home) .footer-area .footer-text {
  margin: 0 !important;
  color: #c1beb5 !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 8px !important;
  font-weight: 400;
  letter-spacing: .04em;
  line-height: 1.6;
  text-align: right;
}
body:not(.rr-home) .footer-area .footer-links {
  display: flex !important;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 18px;
  margin: 12px 0 0 !important;
  padding: 11px 0 0;
  border-top: 1px solid rgba(245,243,238,.12);
  text-align: center;
}
body:not(.rr-home) .footer-area .footer-link {
  display: inline-block;
  margin: 0 !important;
  padding: 0;
  color: #c1beb5 !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 8px !important;
  font-weight: 400;
  letter-spacing: .04em;
  line-height: 1.6;
  transition: color .2s ease;
}
body:not(.rr-home) .footer-area .footer-link:hover { color: #f6f4ef !important; }

@media (max-width: 700px) {
  body:not(.rr-home) h1 { font-size: clamp(34px, 10vw, 48px) !important; }
  body:not(.rr-home) h2 { font-size: clamp(28px, 8vw, 38px) !important; }
  body:not(.rr-home) .footer-area { padding: 18px 6vw 14px !important; }
  body:not(.rr-home) .footer-area .footer-bottom {
    display: flex !important;
    flex-direction: column;
    gap: 9px;
    text-align: center;
  }
  body:not(.rr-home) .footer-area .footer-text { text-align: center; }
  body:not(.rr-home) .footer-area .footer-links { gap: 13px; margin-top: 10px !important; padding-top: 10px; }
}
