:root{
  --cream:#F7F2EA; --cream-2:#EFE7D9; --slate:#5C7488; --slate-dark:#3B4C5C;
  --ink:#2A2E33; --blush:#E2A5A0; --blush-dark:#C97F7A; --gold:#E9BF6B;
  --line:#D9CDB8; --white:#FFFDF9;
}
*{margin:0;padding:0;box-sizing:border-box;}
body{background:var(--cream);color:var(--ink);font-family:'Sora',sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased;}
h1,h2{font-family:'Fraunces',serif;font-weight:500;color:var(--slate-dark);line-height:1.2;}
a{color:var(--blush-dark);}
header{background:rgba(247,242,234,.95);border-bottom:1px solid var(--line);}
nav{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;max-width:900px;margin:0 auto;}
.logo{font-family:'Fraunces',serif;font-size:1.3rem;font-weight:600;color:var(--slate-dark);}
.logo em{font-style:normal;color:var(--blush-dark);}
.back{font-size:.88rem;font-weight:600;color:var(--slate-dark);opacity:.8;}
.wrap{max-width:780px;margin:0 auto;padding:64px 24px 90px;}
.eyebrow{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--blush-dark);font-weight:600;display:block;margin-bottom:14px;}
h1{font-size:2.2rem;margin-bottom:10px;}
.updated{font-size:.85rem;color:#8a8e90;margin-bottom:40px;}
h2{font-size:1.25rem;margin-top:34px;margin-bottom:12px;}
p,li{font-size:.95rem;color:#4c5054;margin-bottom:14px;}
ul{padding-left:22px;margin-bottom:14px;}
.box{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:26px 28px;margin:24px 0;}
footer{border-top:1px solid var(--line);text-align:center;padding:28px;font-size:.82rem;color:#8a8e90;}
form{display:grid;gap:16px;margin-top:20px;}
label{font-size:.85rem;font-weight:600;color:var(--slate-dark);}
input,textarea{
  width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:10px;
  font-family:'Sora',sans-serif;font-size:.92rem;background:var(--white);color:var(--ink);
}
textarea{min-height:130px;resize:vertical;}
button{
  justify-self:start;background:var(--gold);color:var(--slate-dark);font-weight:700;
  padding:13px 28px;border-radius:100px;border:none;font-size:.92rem;cursor:pointer;
}
.contact-info{display:flex;gap:32px;flex-wrap:wrap;margin:26px 0 10px;}
.contact-info div b{display:block;color:var(--slate-dark);font-size:.85rem;margin-bottom:4px;}
.contact-info div span{font-size:.9rem;color:#5b5f63;}
