/* Moradis — shared styles. Charcoal ink on a warm neutral ground; brick for
   Homes, slate for Consulting. Display: Bricolage Grotesque; body: Public Sans. */
:root{
  --ground:#f4f3ef; --panel:#fbfaf7; --ink:#22211d; --muted:#6b675e; --line:#ddd9d0;
  --brick:#8c3f24; --brick-soft:#f0e2db; --slate:#2e5d73; --slate-soft:#dfe8ec;
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{background:var(--ground);color:var(--ink);font-family:"Public Sans",-apple-system,"Helvetica Neue",Arial,sans-serif;font-size:17px;line-height:1.65}
.display{font-family:"Bricolage Grotesque","Public Sans",Arial,sans-serif}
a{color:inherit}
.wrap{max-width:1060px;margin:0 auto;padding:0 22px}

/* Masthead */
header{border-bottom:1px solid var(--line);background:var(--panel)}
.mast{display:flex;align-items:center;justify-content:space-between;padding:18px 0}
.wordmark{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:22px;letter-spacing:.02em;text-decoration:none}
.wordmark span{color:var(--muted);font-weight:500}
nav.top a{text-decoration:none;font-size:14.5px;font-weight:600;margin-left:22px;color:var(--muted)}
nav.top a:hover{color:var(--ink)}
nav.top a.on-homes{color:var(--brick)} nav.top a.on-consulting{color:var(--slate)}

/* Landing hero */
.hero{padding:72px 0 44px;text-align:left}
.hero h1{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:clamp(40px,7.5vw,68px);line-height:1.02;letter-spacing:-.015em;text-wrap:balance;max-width:16ch}
.hero p{margin-top:18px;max-width:52ch;font-size:19px;color:var(--muted)}
.hero p b{color:var(--ink);font-weight:600}

/* Two doors */
.doors{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:26px 0 60px}
@media(max-width:760px){.doors{grid-template-columns:1fr}}
.door{display:block;text-decoration:none;border:1px solid var(--line);background:var(--panel);padding:34px 30px 30px;position:relative;transition:transform .15s ease, box-shadow .15s ease}
.door:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(34,33,29,.10)}
.door .tag{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:5px 12px;border-radius:999px}
.door.homes .tag{background:var(--brick-soft);color:var(--brick)}
.door.consulting .tag{background:var(--slate-soft);color:var(--slate)}
.door h2{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:30px;margin:16px 0 8px}
.door.homes{border-top:5px solid var(--brick)} .door.consulting{border-top:5px solid var(--slate)}
.door p{color:var(--muted);font-size:15.5px;max-width:44ch}
.door .go{display:inline-block;margin-top:18px;font-weight:700;font-size:15px}
.door.homes .go{color:var(--brick)} .door.consulting .go{color:var(--slate)}

/* Brothers strip */
.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--panel);padding:44px 0}
.strip .cols{display:grid;grid-template-columns:1fr 1fr;gap:34px}
@media(max-width:760px){.strip .cols{grid-template-columns:1fr}}
.strip h3{font-family:"Bricolage Grotesque",sans-serif;font-size:19px;font-weight:700;margin-bottom:6px}
.strip .role{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}
.strip .role.homes{color:var(--brick)} .strip .role.consulting{color:var(--slate)}
.strip p{color:var(--muted);font-size:15.5px;max-width:48ch}

/* Section pages */
.page-hero{padding:64px 0 36px;border-bottom:1px solid var(--line)}
.page-hero .tag{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:5px 12px;border-radius:999px;margin-bottom:16px}
.page-hero.homes .tag{background:var(--brick-soft);color:var(--brick)}
.page-hero.consulting .tag{background:var(--slate-soft);color:var(--slate)}
.page-hero h1{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:clamp(34px,6vw,54px);line-height:1.05;letter-spacing:-.01em;text-wrap:balance}
.page-hero p{margin-top:14px;max-width:56ch;font-size:18px;color:var(--muted)}
.page-hero.homes{border-top:5px solid var(--brick)} .page-hero.consulting{border-top:5px solid var(--slate)}

.services{padding:48px 0 20px}
.services h2{font-family:"Bricolage Grotesque",sans-serif;font-size:24px;font-weight:800;margin-bottom:20px}
.svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.svc{border:1px solid var(--line);background:var(--panel);padding:20px}
.svc h3{font-size:16.5px;font-weight:700;margin-bottom:6px}
.svc p{font-size:14.5px;color:var(--muted)}
.svc{border-left:4px solid var(--line)}
.homes-page .svc{border-left-color:var(--brick)} .consulting-page .svc{border-left-color:var(--slate)}

.how{padding:34px 0 10px}
.how ol{padding-left:20px;max-width:64ch}
.how li{margin:10px 0;color:var(--muted)} .how li b{color:var(--ink)}

.crossref{margin:48px 0;border:1px dashed var(--line);background:var(--panel);padding:22px 24px}
.crossref a{font-weight:700}
.homes-page .crossref a{color:var(--slate)} .consulting-page .crossref a{color:var(--brick)}

/* Contact + footer */
.contact{padding:52px 0}
.contact h2{font-family:"Bricolage Grotesque",sans-serif;font-size:26px;font-weight:800;margin-bottom:10px}
.contact p{color:var(--muted);max-width:56ch}
.contact .mail{display:inline-block;margin-top:14px;font-weight:700;font-size:18px;text-decoration:none;border-bottom:2px solid var(--ink)}
footer{border-top:1px solid var(--line);background:var(--panel);padding:26px 0;font-size:13.5px;color:var(--muted)}
footer .wrap{display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between}
