
/* === Wheelie Fresh v10 Theme (no hero watermark) === */

/* Page background: teal → sand */
body {
  background: linear-gradient(180deg, #e6f5f3 0%, #fef3df 40%, #fff7d9 100%);
  color: #222;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Inter, Arial, sans-serif;
  line-height: 1.6;
  margin: 0;
}

/* Topbar & footer */
.topbar, .footer {
  background: rgba(13, 148, 136, 0.98);
  color: #fff;
}
.topbar { display:flex; align-items:center; justify-content:space-between; padding:12px 16px; }
.nav a, .call { color:#fff; text-decoration:none; margin-left:12px; }
.brand { display:flex; align-items:center; gap:10px; }
.site-logo { height:56px; width:auto; display:block; }

/* Clean hero (no watermark), still with gradient */
.hero {
  background: linear-gradient(180deg, #d9f3f0 0%, #fff9e8 100%);
  padding: 56px 16px 44px;
  text-align: center;
}
.hero h1 { color:#0d9488; font-size:2.8rem; margin:0 0 4px; }
.hero .subtitle { font-size:1.2rem; color:#355; margin:0 0 12px; }
.badges { list-style:none; padding:0; margin:0 0 12px; display:flex; gap:10px; justify-content:center; flex-wrap:wrap;}
.badges li { background:#fff; border:1px solid #e7f6f3; color:#0b5f58; padding:6px 10px; border-radius:999px; }
.cta a { margin:0 6px; }

/* Sections on soft cards */
.section {
  background: rgba(255,255,255,0.94);
  border-radius: 16px;
  padding: 2rem 1.25rem;
  margin: 1rem auto;
  box-shadow: 0 2px 10px rgba(0,0,0,0.06);
  max-width: 1000px;
}

/* Headings styling (center + eco-green underline) */
.section h2 {
  text-align: center;
  margin: 0 auto 1.4rem;
  color: #0d9488;
  font-size: 2rem;
  font-weight: 800;
  text-transform: uppercase;
  position: relative;
  display: inline-block;
  left: 50%;
  transform: translateX(-50%);
  text-shadow: 0 0 6px rgba(13,148,136,0.18);
}
.section h2::after {
  content:"";
  display:block;
  width:88px; height:3px;
  background: linear-gradient(90deg,#0d9488 0%, #34d399 100%);
  margin: 10px auto 0;
  border-radius:2px;
}

.cards { display:grid; gap:12px; }
@media (min-width: 720px){ .cards { grid-template-columns: repeat(3, 1fr);} }
.card { background:#fff; border:1px solid #eef2f7; border-radius:12px; padding:1rem; }

/* Forms & buttons */
.form input, .form select, .form textarea {
  width: 100%; padding:10px; margin:6px 0 10px;
  border:1px solid #dbe7e4; border-radius:8px;
}
.btn-primary { background:#0d9488; color:#fff; padding:10px 16px; border-radius:8px; text-decoration:none; display:inline-block; }
.btn-outline { border:1px solid #0d9488; color:#0d9488; padding:9px 15px; border-radius:8px; text-decoration:none; display:inline-block; background:#fff; }

.footer { text-align:center; padding:20px 12px; }
.footer a { color:#0dffe0; }
.copy { margin:8px 0 0; }
.contact-title { font-weight:700; margin:0; }
.abn { opacity:0.9; }
.tiny { color:#666; font-size:.9rem; }


/* Neighbour Bin-Share table */
.table-wrap { overflow-x: auto; }
.price-table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  border: 1px solid #eef2f7;
  border-radius: 12px;
  overflow: hidden;
}
.price-table th, .price-table td {
  padding: 12px 14px;
  text-align: left;
  border-bottom: 1px solid #f1f5f9;
}
.price-table thead th {
  background: #ecfdf5;
  color: #0d9488;
  font-weight: 700;
}
.price-table tbody tr:last-child td { border-bottom: 0; }
.price-table td strong { color: #047857; }

/* Align checkbox with its text */
.checkline label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  line-height: 1.3;
}
.checkline input[type="checkbox"] {
  width: 18px;
  height: 18px;
}


/* Smaller variant for community bin-itiative line */
.checkline.small { font-size: 0.95rem; }


/* Left-aligned CTA under neighbour section */
.cta-left { text-align: left; margin-top: 0.75rem; }
.cta-left .btn-primary { display: inline-block; }

/* --- Wheelie Fresh form tidy --- */
.wf-form { display:grid; gap:16px; }
.wf-form label { display:block; font-weight:600; font-size:14px; margin-bottom:4px; }
.wf-form input, .wf-form select, .wf-form textarea {
  width:100%; height:44px; padding:10px 12px;
  border:1px solid #e2e8f0; border-radius:12px;
  background:#fff; font:inherit; outline:none;
}
.wf-form textarea { height:110px; resize:vertical; }
.wf-form input:focus, .wf-form select:focus, .wf-form textarea:focus {
  border-color:#18a05f; box-shadow:0 0 0 3px rgba(24,160,95,.12);
}
.wf-fieldset { border:1px solid #e2e8f0; border-radius:16px; padding:14px 12px; }
.wf-legend { font-weight:800; margin:0 6px; }
.wf-row { display:grid; gap:12px; grid-template-columns:1fr 1fr; }
.wf-row-3 { display:grid; gap:12px; grid-template-columns:2fr 1fr 1fr; }
@media (max-width:720px){ .wf-row, .wf-row-3 { grid-template-columns:1fr; } }
.wf-check { display:flex; align-items:flex-start; gap:10px; }
.wf-check input[type="checkbox"] { margin-top:2px; }
.wf-reveal { display:none; margin-top:8px; }
.wf-check input[type="checkbox"]:checked ~ .wf-reveal { display:block; }
.wf-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:6px; }
.wf-btn {
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 16px; border:0; border-radius:14px;
  background:#18a05f; color:#fff; font-weight:800; cursor:pointer;
}
.wf-pill {
  display:inline-flex; align-items:center; gap:8px;
  padding:8px 12px; border-radius:999px; border:1px solid #e2e8f0;
  background:#fff; color:#0f172a; text-decoration:none;
}

/* --- Wheelie Fresh: tidy booking form --- */
.wf-form { display:grid; gap:16px; }
.wf-form label { display:block; font-weight:600; font-size:14px; margin-bottom:4px; }
.wf-form input, .wf-form select, .wf-form textarea{ width:100%; height:44px; padding:10px 12px; border:1px solid #e2e8f0; border-radius:12px; background:#fff; font:inherit; outline:none; }
.wf-form textarea{ height:110px; resize:vertical; }
.wf-form input:focus,.wf-form select:focus,.wf-form textarea:focus{ border-color:#18a05f; box-shadow:0 0 0 3px rgba(24,160,95,.12); }
.wf-fieldset{ border:1px solid #e2e8f0; border-radius:16px; padding:14px 12px; }
.wf-legend{ font-weight:800; margin:0 6px; }
.wf-row{ display:grid; gap:12px; grid-template-columns:1fr 1fr; }
.wf-row-3{ display:grid; gap:12px; grid-template-columns:2fr 1fr 1fr; }
@media (max-width:720px){ .wf-row,.wf-row-3{ grid-template-columns:1fr; } }
.wf-check{ display:flex; align-items:flex-start; gap:10px; }
.wf-check input[type="checkbox"]{ margin-top:2px; }
.wf-reveal{ display:none; margin-top:8px; }
.wf-check input[type="checkbox"]:checked ~ .wf-reveal{ display:block; }
.wf-actions{ display:flex; gap:12px; flex-wrap:wrap; margin-top:6px; }
.wf-btn{ display:inline-flex; align-items:center; justify-content:center; padding:12px 16px; border:0; border-radius:14px; background:#18a05f; color:#fff; font-weight:800; cursor:pointer; }
.wf-pill{ display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:999px; border:1px solid #e2e8f0; background:#fff; color:#0f172a; text-decoration:none; }


/* --- Wheelie Fresh: tidy booking form --- */
.wf-form { display:grid; gap:16px; }
.wf-form label { display:block; font-weight:600; font-size:14px; margin-bottom:4px; }
.wf-form input, .wf-form select, .wf-form textarea{ width:100%; height:44px; padding:10px 12px; border:1px solid #e2e8f0; border-radius:12px; background:#fff; font:inherit; outline:none; }
.wf-form textarea{ height:110px; resize:vertical; }
.wf-form input:focus,.wf-form select:focus,.wf-form textarea:focus{ border-color:#18a05f; box-shadow:0 0 0 3px rgba(24,160,95,.12); }
.wf-fieldset{ border:1px solid #e2e8f0; border-radius:16px; padding:14px 12px; }
.wf-legend{ font-weight:800; margin:0 6px; }
.wf-row{ display:grid; gap:12px; grid-template-columns:1fr 1fr; }
.wf-row-3{ display:grid; gap:12px; grid-template-columns:2fr 1fr 1fr; }
@media (max-width:720px){ .wf-row,.wf-row-3{ grid-template-columns:1fr; } }
.wf-check{ display:flex; align-items:flex-start; gap:10px; }
.wf-check input[type="checkbox"]{ margin-top:2px; }
.wf-reveal{ display:none; margin-top:8px; }
.wf-check input[type="checkbox"]:checked ~ .wf-reveal{ display:block; }
.wf-actions{ display:flex; gap:12px; flex-wrap:wrap; margin-top:6px; }
.wf-btn{ display:inline-flex; align-items:center; justify-content:center; padding:12px 16px; border:0; border-radius:14px; background:#18a05f; color:#fff; font-weight:800; cursor:pointer; }
.wf-pill{ display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:999px; border:1px solid #e2e8f0; background:#fff; color:#0f172a; text-decoration:none; }

