
/* ==== EWE Partner UI – core styles (restored) ==== */

/* Color tokens */
:root{
  --ewe-yellow:#ffd200;
  --ewe-green:#114b2f;
  --ewe-green-2:#0d3e26;
  --ewe-gray-900:#2b2f30;
  --ewe-gray-800:#3a4041;
  --ewe-gray-700:#4f5556;
  --ewe-gray-600:#666b6c;
  --ewe-gray-200:#e8ecec;
  --ewe-gray-150:#eff2f2;
  --ewe-gray-100:#f6f7f7;
  --ewe-red:#d52d2d;
}

/* Typography tweaks so headings look elegant again */
.ewe-hero h1,
.ewe-hero h2,
.ewe-hero h3{
  text-align:center;
  line-height:1.2;
  margin:0.25rem auto;
}
.ewe-hero h1{ font-size: clamp(2.25rem, 3vw + 1.2rem, 3.25rem); }
.ewe-hero h2{ font-size: clamp(1.25rem, 1.1vw + 1rem, 1.65rem); font-weight:700; }

/* Phone number – big & yellow */
.ewe-hero .ewe-phone{
  display:block;
  margin: 0.5rem auto 0.75rem;
  text-align:center;
  font-weight:800;
  color:var(--ewe-yellow);
  font-size: clamp(2.25rem, 3.4vw + 1rem, 3.25rem);
}
.ewe-hero .ewe-phone a{ color:inherit; text-decoration:none; }

/* Make helper subline close to the wave */
.ewe-hero .ewe-subline{
  text-align:center;
  margin-top: -0.25rem;
  margin-bottom: 0.75rem;
}

/* --- WAVE ---  (set to elegant dark grey, not black) */
.ewe-wave svg path,
.ewe-wave path{
  fill: var(--ewe-gray-700) !important;
}

/* Grid for tariff cards */
.ewe-tariff-grid{
  max-width:1200px;
  margin: 2.5rem auto 1.5rem;
  padding: 0 1rem;
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 2rem 2rem;
}
@media (max-width: 980px){
  .ewe-tariff-grid{ grid-template-columns: 1fr; }
}

/* Individual tariff card */
.ewe-card{
  background:#fff;
  border:2px solid var(--ewe-gray-200);
  border-radius:14px;
  padding: 1.6rem 1.6rem 1.2rem;
  box-shadow: 0 1px 0 rgba(0,0,0,.02);
}
.ewe-card .ewe-pill{
  display:inline-block;
  border:2px solid #225a3a;
  color:#225a3a;
  padding:.35rem .9rem;
  border-radius:999px;
  font-weight:700;
  margin-bottom:.75rem;
}
.ewe-card h3{
  font-size:2rem;
  margin:.25rem 0 .5rem;
  line-height:1.1;
}
.ewe-card .ewe-price{
  font-size:1.15rem;
  font-weight:700;
  margin:.25rem 0 1rem;
}
.ewe-card ul{ margin:.75rem 0 1rem 1.25rem; }
.ewe-card li{ margin:.25rem 0; }

/* availability link */
.ewe-card .ewe-cta{
  display:inline-block;
  margin-top:.5rem;
  font-weight:700;
  text-decoration:underline;
}

/* Highlight/notice boxes */
.ewe-notes{
  max-width:1200px;
  margin: 1rem auto 2.25rem;
  padding: 0 1rem;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
}
@media (max-width: 980px){
  .ewe-notes{ grid-template-columns:1fr; }
}
.ewe-note{
  background: var(--ewe-gray-100);
  border:2px dashed var(--ewe-gray-200);
  border-radius:14px;
  padding:1.25rem 1.5rem;
}
.ewe-note--solid{
  background: #fff7cc;
  border:2px solid #f1dc77;
}

/* Why section */
.ewe-why{
  background:var(--ewe-gray-100);
  padding: 2.25rem 0;
}
.ewe-why .ewe-tiles{
  max-width:1200px;
  margin:0 auto;
  padding:0 1rem;
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:1rem;
}
@media (max-width: 980px){
  .ewe-why .ewe-tiles{ grid-template-columns:1fr; }
}
.ewe-why .tile{
  background:#fff;
  border:1px solid var(--ewe-gray-200);
  border-radius:12px;
  padding:1rem 1.25rem;
}

/* Partner & Presse */
.ewe-press{
  max-width:1200px;
  margin: 1.5rem auto 0;
  padding:0 1rem 1rem;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:1rem;
}
@media (max-width: 980px){
  .ewe-press{ grid-template-columns:1fr; }
}

/* Kontakt block with red border */
.ewe-contact{
  max-width:1200px;
  margin: 1.5rem auto 2rem;
  padding: 0 1rem;
}
.ewe-contact .box{
  background:#fff;
  border:2px solid var(--ewe-red);
  border-radius:12px;
  padding:1rem 1.25rem;
}

/* Footer: legal links aligned to right */
.ewe-footer-legal{
  max-width:1200px;
  margin:0 auto;
  padding: .75rem 1rem 1.25rem;
  display:flex;
  justify-content:flex-end;
  gap:1.25rem;
}
.ewe-footer-legal a{
  color:inherit;
}
