/*
Theme Name: Rootz Coming Soon
Theme URI: https://rootzcare.nl
Author: Rootz / Nature’s Rootz
Description: Minimalistisch coming-soon thema (alleen homepage) met juridische pagina's als echte WordPress pagina’s.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: rootz-coming-soon
*/

:root{
  --terracotta:#A45A3E;
  --sand:#EAD3C0;
  --cream:#FFF6EE;
  --text:#2B2624;
  --card:#FFFFFF;
  --max:72ch;
}

*{ box-sizing:border-box; }
html,body{ height:100%; }
body{
  margin:0;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Helvetica,Arial,sans-serif;
  color:var(--text);
  background:var(--cream);
  line-height:1.6;
}

a{ color:var(--terracotta); text-decoration:none; }
a:hover{ text-decoration:underline; }
img{ max-width:100%; height:auto; }

/* Layout */
.site-wrap{
  min-height:100vh;
  display:flex;
  flex-direction:column;
}
.site-header{
  padding:18px 20px;
}
.site-main{
  flex:1;
}
.site-footer{
  padding:26px 20px;
  color:rgba(43,38,36,.75);
  font-size:14px;
}

/* Coming soon */
.hero{
  padding:64px 20px 42px;
  display:flex;
  justify-content:center;
}
.hero-inner{
  width:min(920px,100%);
  text-align:center;
}
.hero-logo{
  width:160px;
  margin:0 auto 18px;
}
.brand{
  font-weight:700;
  letter-spacing:.18em;
  font-size:42px;
  margin:0;
}
.tagline{
  margin:10px 0 0;
  font-size:18px;
  color:rgba(43,38,36,.85);
}
.subtext{
  margin:22px auto 0;
  max-width:46ch;
  color:rgba(43,38,36,.75);
}

.links{
  margin:34px auto 0;
  display:flex;
  gap:16px;
  justify-content:center;
  flex-wrap:wrap;
}
.pill{
  display:inline-flex;
  align-items:center;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(164,90,62,.28);
  background:rgba(255,255,255,.65);
  color:var(--text);
}
.pill:hover{
  background:#fff;
  text-decoration:none;
}

.card{
  margin:40px auto 0;
  width:min(720px,100%);
  background:var(--card);
  border:1px solid rgba(43,38,36,.08);
  border-radius:18px;
  padding:18px 18px 16px;
  text-align:left;
  box-shadow:0 10px 30px rgba(0,0,0,.04);
}

.form-row{ display:flex; gap:12px; flex-wrap:wrap; }
.field{ flex:1 1 220px; margin:10px 0; }
label{ display:block; font-size:14px; margin:0 0 6px; }
input[type="text"], input[type="email"], textarea{
  width:100%;
  padding:12px 12px;
  border-radius:12px;
  border:1px solid rgba(43,38,36,.18);
  background:#fff;
  color:var(--text);
  font-size:16px;
}
textarea{ min-height:120px; resize:vertical; }

.checkbox{
  display:flex;
  gap:10px;
  align-items:flex-start;
  font-size:14px;
  margin:12px 0 0;
  color:rgba(43,38,36,.85);
}
.checkbox input{ margin-top:3px; }

.btn{
  margin-top:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:none;
  cursor:pointer;
  border-radius:12px;
  padding:12px 16px;
  background:var(--terracotta);
  color:#fff;
  font-weight:600;
  font-size:16px;
}
.btn:hover{ filter:brightness(.98); }
.notice{
  margin:14px 0 0;
  padding:12px 12px;
  border-radius:12px;
  background:rgba(234,211,192,.55);
  border:1px solid rgba(164,90,62,.22);
}

/* Legal pages */
.page-shell{
  padding:80px 20px 44px; /* IMPORTANT: prevent first paragraph from falling under header */
  display:flex;
  justify-content:center;
}
.prose{
  width:100%;
  max-width:var(--max);
  background:rgba(255,255,255,.60);
  border:1px solid rgba(43,38,36,.08);
  border-radius:18px;
  padding:22px 18px;
}
.prose h1,.prose h2,.prose h3{
  line-height:1.2;
  margin:0 0 14px;
}
.prose h1{ font-size:28px; }
.prose h2{ font-size:20px; margin-top:22px; }
.prose h3{ font-size:17px; margin-top:18px; }
.prose p{ margin:0 0 12px; }
.prose ul{ margin:0 0 12px 18px; }
.prose li{ margin:6px 0; }
.prose hr{ border:0; border-top:1px solid rgba(43,38,36,.12); margin:18px 0; }

/* Small screens */
@media (max-width:520px){
  .brand{ font-size:34px; }
  .hero-logo{ width:140px; }
  .card{ padding:16px 14px 14px; }
  .prose{ padding:18px 14px; }
}
