@import url('https://fonts.googleapis.com/css2?family=Literata:wght@400;600&family=Nunito+Sans:wght@400;600&display=swap');
:root {
  --gentlewa-bg: #E8EFE6; --gentlewa-fg: #243028; --gentlewa-muted: #4E5E52;
  --gentlewa-accent: #3D6B4F; --gentlewa-panel: #D4E2D0; --gentlewa-band: #B8CEB4;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: 'Nunito Sans', Georgia, serif;
  background: var(--gentlewa-bg);
  color: var(--gentlewa-fg);
  line-height: 1.65;
  font-size: 1.05rem;
}
h1,h2,h3,.gentlewa-brand,.gentlewa-brand-only {
  font-family: 'Literata', Georgia, serif;
  font-weight: 600;
  
  
  line-height: 1.15;
}
a { color: var(--gentlewa-accent); }
.gentlewa-wrap { min-height: 100vh; display: flex; flex-direction: column; }
.gentlewa-main { flex: 1; width: min(100% - 2rem, 65ch); margin: 0 auto; padding: 2rem 0 4rem; }
.gentlewa-main-wide { width: min(100% - 2rem, 1100px); margin: 0 auto; padding: 2rem 0 4rem; }
.gentlewa-header { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 1.25rem; position:relative; }
.gentlewa-logo { font-family:'Literata',sans-serif; font-weight:700; text-decoration:none; color:inherit; font-size:1.15rem; }

.gentlewa-nav-toggle { display:none; background:transparent; border:1px solid #243028; color:#243028; padding:.35rem .6rem; cursor:pointer; font:inherit; }
.gentlewa-nav ul { list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:.75rem 1.25rem; }
.gentlewa-nav a { color:inherit; text-decoration:none; }
.gentlewa-nav a:hover { text-decoration:underline; }

.gentlewa-nav-toggle { display:inline-block; }
.gentlewa-tap { position:fixed; inset:0; background:#E8EFE6; z-index:900; display:none; padding:2rem; }
.gentlewa-tap.is-open { display:block; }
.gentlewa-tap a { display:block; font-size:clamp(1.5rem,5vw,2.5rem); padding:.5rem 0; color:#243028; text-decoration:none; border-bottom:1px solid #B8CEB4; }

.gentlewa-footer { background:transparent; color:#243028; padding:2rem 1.25rem; text-align:center; border-top:1px solid #4E5E52; }
.gentlewa-footer a { color:#4E5E52; } .gentlewa-footer nav { display:none; }

.gentlewa-cookies { position:fixed; z-index:1000; background:#D4E2D0; color:#243028; border:1px solid #4E5E52; padding:1rem; max-width:24rem; box-shadow:0 8px 24px rgba(0,0,0,.12); }
.gentlewa-cookies[hidden] { display:none !important; }
.gentlewa-cookies button { margin:.25rem .25rem 0 0; cursor:pointer; font:inherit; padding:.4rem .7rem; border:1px solid #243028; background:#E8EFE6; color:#243028; }
.gentlewa-cookie-settings[hidden] { display:none !important; }
.gentlewa-cookies { top:0; left:0; right:0; max-width:none; border-radius:0; }

.gentlewa-form { display:grid; gap:.75rem; max-width:28rem; }
.gentlewa-form label { display:grid; gap:.25rem; font-size:.95rem; }
.gentlewa-form input, .gentlewa-form textarea { font:inherit; padding:.55rem .65rem; border:1px solid var(--gentlewa-muted); background:#fff; color:#111; }
.gentlewa-form button { justify-self:start; padding:.6rem 1rem; border:none; background:var(--gentlewa-accent); color:#fff; cursor:pointer; font:inherit; }
.gentlewa-form-ok { color: var(--gentlewa-accent); }
.gentlewa-legal { max-width: 68ch; }
.gentlewa-contact-block p { margin: .25rem 0; }

.gentlewa-typehero { padding:4rem 1.25rem 2rem; }
.gentlewa-typehero h1 { font-size:clamp(2rem,5vw,3.2rem); }
.gentlewa-window { display:grid; grid-template-columns:repeat(auto-fit,minmax(12rem,1fr)); gap:1px; background:var(--gentlewa-band); border:1px solid var(--gentlewa-band); margin:2rem 0; }
.gentlewa-window > div { background:var(--gentlewa-bg); padding:1.25rem; }
.gentlewa-pull { font-size:1.5rem; text-align:center; margin:2.5rem auto; max-width:30ch; border:none; }
.gentlewa-sec-label { font-size:.75rem; letter-spacing:.14em; text-transform:uppercase; color:var(--gentlewa-muted); margin-top:2rem; }
.gentlewa-dock { display:flex; justify-content:center; gap:1.25rem; padding:.75rem; border-top:1px solid var(--gentlewa-band); background:var(--gentlewa-panel); }
@media(max-width:800px){
  .gentlewa-dock { position:fixed; bottom:0; left:0; right:0; z-index:70; }
  body { padding-bottom:4rem; }
}
.gentlewa-form button { transition: background .25s, color .25s; }
.gentlewa-form button:hover { background:var(--gentlewa-fg); color:var(--gentlewa-bg); }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
