.elementor-2410 .elementor-element.elementor-element-aa02b6e{--display:flex;}/* Start custom CSS for html, class: .elementor-element-28ee853 *//* ====== MatsumiMatcha Legal Theme ====== */
:root{
  --primary:#1D240F;
  --secondary:#4E5B31;
  --text:#333333;
  --muted:#7A7A7A;
  --accent:#E9E9E9;
  --bg:#F5F3EE;
  --g1:#DBD7D3; --g2:#EBE3DA; --g3:#DDD8CF; --g4:#CFC9C1; --taupe:#A89F91;
}

.legal-wrap{
  color:var(--text);
  font: 16px/1.7 "Inter", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background: #fff;
}
.legal-container{
  max-width: 1250px;
  margin: 0 auto;
  padding: clamp(28px, 5vw, 48px) 20px 64px;
}

/* Hero */
.legal-hero{
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(900px 420px at 15% -10%, rgba(77,106,45,.10), transparent 60%),
    linear-gradient(180deg,#ffffff, var(--bg) 70%, #ffffff);
  border-bottom: 1px solid var(--accent);
}
.legal-hero .legal-container{ padding-top: 64px; padding-bottom: 32px; }
.legal-badge{
  display:inline-flex; gap:8px; align-items:center;
  padding:6px 12px; border:1px solid #CBD4C2; border-radius:999px; background:#fff;
  color:#2d4b1e; font-weight:600; font-size:13px;
}
.legal-badge i{ width:8px; height:8px; border-radius:50%; background:var(--secondary); display:inline-block; }

.legal-title{
  margin:14px 0 4px; font-size: clamp(28px, 5vw, 44px); line-height:1.15; font-weight: 800; color: var(--primary);
}
.legal-sub{
  margin: 0; color: var(--muted); max-width: 56ch;
}

/* Body */
.legal-content{ margin-top: 28px; }
.legal-section{ margin: 28px 0; padding: 0; }
.legal-section + .legal-section{ border-top: 1px solid var(--accent); padding-top: 28px; }

.legal-h2{
  font-size: clamp(20px, 3vw, 26px); line-height:1.25; color: var(--primary); margin: 0 0 8px; font-weight: 800;
}
.legal-h3{
  font-size: 18px; color: var(--secondary); margin: 16px 0 8px; font-weight: 700;
}
.legal-p{ margin: 8px 0; }
.legal-list{ margin: 10px 0 12px 18px; }
.legal-list li{ margin: 6px 0; }

/* Callouts / cards */
.note{
  background: linear-gradient(180deg, #fff, var(--g2));
  border: 1px solid var(--g1);
  border-radius: 12px;
  padding: 14px 16px;
  color: var(--text);
}
.note strong{ color: var(--primary); }

/* Info table (bij privacy) */
.legal-table{
  width:100%; border-collapse: collapse; margin: 12px 0 18px; font-size: 15px;
  border:1px solid var(--g1); border-radius: 10px; overflow: hidden;
}
.legal-table th{
  background: var(--g3); color: var(--primary); text-align:left; padding: 10px 12px; font-weight: 700;
}
.legal-table td{
  background: #fff; border-top: 1px solid var(--g1); padding: 10px 12px; vertical-align: top;
}
.legal-table tr:nth-child(even) td{ background: #fafafa; }

/* Footer bar */
.legal-footer{
  margin-top: 28px; padding: 14px 0; border-top: 1px solid var(--accent);
  color: var(--muted); font-size: 14px;
}

/* Links */
.legal-content a{ color: var(--secondary); text-decoration: underline; text-decoration-thickness: .08em; }
.legal-content a:hover{ color: var(--primary); }

/* Small utilities */
.badge-soft{
  display:inline-block; background:#F3F7F1; border:1px solid #D8E4CF; color:#27471A;
  padding:4px 10px; border-radius:999px; font-weight:600; font-size:12px;
}

/* Responsive tweaks */
@media (max-width:640px){
  .legal-container{ padding-left: 16px; padding-right: 16px; }
  .legal-table{ font-size: 14px; }
}/* End custom CSS */