/* ===== Craft By Dipal — shared site styles ===== */
:root{
  --paper:#F2ECDE;
  --paper-2:#EAE2CF;
  --card:#FBF8F1;
  --ink:#241C15;
  --ink-soft:#5B5142;
  --line:#D9CDB2;
  --line-soft:#E4DAC3;
  --thread:#AE3B27;
  --thread-dark:#8C2E1F;
  --brass:#9C7B2C;
  --green:#3F6B4A;
  --green-bg:#E7EFE6;
  --radius:10px;
  --radius-lg:16px;
  --shadow:0 1px 2px rgba(36,28,21,.06), 0 6px 16px rgba(36,28,21,.05);
}
*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%; scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:'IBM Plex Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  line-height:1.5;
}
h1,h2,h3{
  font-family:'Fraunces', Georgia, 'Times New Roman', serif;
  font-weight:650;
  margin:0;
  letter-spacing:-0.01em;
}
p{margin:0;}
a{color:inherit;}
img{max-width:100%; display:block;}
button{font-family:inherit;}
.wrap{max-width:1180px; margin:0 auto; padding:0 20px;}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:12px 22px;
  border-radius:999px;
  font-size:.92rem;
  font-weight:600;
  text-decoration:none;
  cursor:pointer;
  border:1px solid transparent;
  transition:transform .12s, background .15s, border-color .15s;
  white-space:nowrap;
}
.btn:active{transform:translateY(1px);}
.btn-primary{background:var(--thread); color:#fff;}
.btn-primary:hover{background:var(--thread-dark);}
.btn-outline{background:transparent; color:var(--ink); border-color:var(--ink);}
.btn-outline:hover{background:var(--ink); color:var(--paper);}
.btn-light{background:var(--card); color:var(--ink); border-color:var(--line);}
.btn-light:hover{border-color:var(--brass);}

/* ---------- Nav ---------- */
.sitenav{
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(242,236,222,.92);
  backdrop-filter:blur(6px);
  border-bottom:1px solid var(--line-soft);
}
.sitenav-inner{
  max-width:1180px;
  margin:0 auto;
  padding:12px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
}
.brand{
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
}
.brand img{height:38px; width:auto;}
.brand span{
  font-family:'Fraunces', Georgia, serif;
  font-weight:650;
  font-size:1.05rem;
  color:var(--ink);
}
.navlinks{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}
.navlinks a{
  text-decoration:none;
  font-size:.88rem;
  font-weight:500;
  color:var(--ink-soft);
  padding:8px 14px;
  border-radius:999px;
  transition:background .15s, color .15s;
}
.navlinks a:hover{background:var(--paper-2); color:var(--ink);}
.navlinks a.active{background:var(--ink); color:var(--paper);}
.navlinks a.cta{
  background:var(--thread);
  color:#fff;
}
.navlinks a.cta:hover{background:var(--thread-dark);}

/* ---------- Footer ---------- */
footer.sitefoot{
  background:var(--ink);
  color:var(--paper);
  margin-top:60px;
}
.sitefoot-inner{
  max-width:1180px;
  margin:0 auto;
  padding:36px 20px 26px;
}
.sitefoot-top{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:6px 16px;
  padding-bottom:16px;
  margin-bottom:20px;
  border-bottom:1px solid rgba(242,236,222,.15);
}
.sitefoot-top h2{font-size:1.25rem; color:var(--paper);}
.sitefoot-contact{font-size:.86rem; color:#C8BFAC;}
.sitefoot-contact a{color:#E7A98F; text-decoration:none;}
.sitefoot-contact a:hover{text-decoration:underline;}
.sitefoot-contact .dot{margin:0 8px; color:#5B5142;}
.sitefoot-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(230px, 1fr));
  gap:24px 32px;
}
.sitefoot-col h3{
  font-family:'IBM Plex Sans', sans-serif;
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#8A7F6A;
  font-weight:600;
  margin:0 0 12px;
}
.sitefoot-col dl{margin:0;}
.sitefoot-col dl > div{
  display:flex;
  gap:14px;
  padding:6px 0;
  border-bottom:1px dashed rgba(242,236,222,.12);
  font-size:.85rem;
}
.sitefoot-col dl > div:last-child{border-bottom:0;}
.sitefoot-col dt{flex:none; width:112px; color:#8A7F6A;}
.sitefoot-col dd{margin:0; color:var(--paper); word-break:break-word;}
.sitefoot-col .links a{
  display:block;
  color:#D8CFBD;
  text-decoration:none;
  font-size:.87rem;
  padding:5px 0;
}
.sitefoot-col .links a:hover{color:#fff;}
.sitefoot-bottom{
  margin-top:26px;
  padding-top:16px;
  border-top:1px solid rgba(242,236,222,.1);
  font-size:.76rem;
  color:#8A7F6A;
}

/* ---------- Shared section basics ---------- */
.section{padding:60px 0;}
.eyebrow{
  font-size:.76rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--brass);
  font-weight:600;
  margin-bottom:10px;
}
.section-head{
  max-width:60ch;
  margin-bottom:34px;
}
.section-head h2{font-size:clamp(1.5rem, 1.2rem + 1.2vw, 2rem);}
.section-head p{color:var(--ink-soft); margin-top:10px; font-size:1rem;}

@media (prefers-reduced-motion: reduce){
  *{transition:none !important; scroll-behavior:auto !important;}
}
