
:root { --site-ink: #171717; --site-muted: #5f5a55; --site-paper: #faf8f5; --site-accent: #9a5e3c; }
html { scroll-behavior: smooth; }
body { overflow-x: hidden; }
img { max-width: 100%; height: auto; }
section[id] { scroll-margin-top: 90px; }
.section-intro { max-width: 780px; margin-left: auto; margin-right: auto; }
.navbar-brand img { object-fit: cover; }
.contact-visual { margin: 0; height: 100%; overflow: hidden; border-radius: 2rem; background: #eee7e0; }
.contact-visual img { width: 100%; min-height: 360px; height: 100%; object-fit: cover; display: block; }
.contact-visual figcaption { padding: .75rem 1rem 1rem; color: #4d463f; background: #f7f1eb; font-size: .95rem; }
#footer-4-vs4s21JY3R { padding: 4rem 0 2rem; background: #201b18; color: #fff; }
.site-footer-container { width: 100%; }
.site-footer-grid { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(220px,.6fr); gap: 2rem; align-items: start; }
.site-footer-brand h2, .site-footer-brand p { color: #fff; }
.site-footer-brand p { max-width: 680px; opacity: .82; }
.site-footer-links { display: flex; flex-direction: column; gap: .75rem; align-items: flex-start; }
.site-footer-links a { color: #fff; text-decoration: none; border-bottom: 1px solid transparent; }
.site-footer-links a:hover, .site-footer-links a:focus { border-bottom-color: currentColor; }
.site-legal-footer { margin-top: 2rem; padding: 1.5rem; border: 1px solid rgba(255,255,255,.17); border-radius: 1rem; background: rgba(255,255,255,.045); }
.site-legal-title { margin: 0 0 1rem; font-size: 1.25rem; color: #fff; }
.legal-info-row { display: grid; grid-template-columns: minmax(210px,.35fr) minmax(0,.65fr); gap: 1rem; padding: .45rem 0; color: rgba(255,255,255,.88); }
.legal-info-row strong { color: #fff; }
.site-footer-bottom { margin-top: 1.5rem; padding-top: 1.25rem; border-top: 1px solid rgba(255,255,255,.14); color: rgba(255,255,255,.72); }
.legal-page { min-height: 100vh; background: var(--site-paper); color: var(--site-ink); }
.legal-main { padding: 8rem 0 4rem; }
.legal-content { max-width: 900px; margin: 0 auto; padding: 2rem; background: #fff; border-radius: 2rem; box-shadow: 0 12px 40px rgba(30,20,10,.06); overflow-wrap: anywhere; }
.legal-content h1 { margin-bottom: 1rem; font-size: clamp(2.2rem,6vw,4rem); }
.legal-content h2 { margin-top: 2rem; font-size: clamp(1.4rem,4vw,2rem); }
.legal-content p, .legal-content li { line-height: 1.7; color: #39342f; }
.legal-content a { color: inherit; text-decoration: underline; text-underline-offset: .2em; }
.legal-meta { color: var(--site-muted); margin-bottom: 2rem; }
.legal-header .navbar { background: rgba(250,248,245,.96) !important; box-shadow: 0 1px 0 rgba(0,0,0,.06); }
.legal-header .navbar-toggler { display: none; border: 0; width: 46px; height: 42px; padding: 8px; }
.legal-header .navbar-toggler .hamburger { display: flex; flex-direction: column; justify-content: center; gap: 5px; height: 100%; }
.legal-header .navbar-toggler .hamburger span { display: block; width: 100%; height: 2px; background: #161616; }
.legal-header .navbar-brand a, .legal-header .nav-link { color: #111 !important; text-decoration: none; }
.legal-header .navbar-caption { font-weight: 700; }
@media (max-width: 991px) {
  .site-footer-grid { grid-template-columns: 1fr; }
  .legal-info-row { grid-template-columns: 1fr; gap: .2rem; }
  .legal-header .navbar-toggler { display: block; }
  .legal-header .navbar-collapse { background: #faf8f5; padding: 1rem; border-radius: 1rem; margin-top: .5rem; }
}
@media (max-width: 767px) {
  .mbr-section-title, .section-title, .legal-content h1, .legal-content h2 { overflow-wrap: anywhere; word-break: break-word; white-space: normal; }
  .legal-main { padding-top: 6.5rem; }
  .legal-content { padding: 1.25rem; border-radius: 1.25rem; }
  #footer-4-vs4s21JY3R { padding-top: 3rem; }
  .site-legal-footer { padding: 1rem; }
  .contact-visual img { min-height: 260px; }
}
@media (max-width: 420px) {
  .navbar-caption { font-size: 1rem !important; }
  .navbar-logo img { height: 3.25rem !important; }
}
