/* RunCalendar site — shared styles (inlined into each page at build; kept here as the single source) */
:root{
  --green:#019669; --greenDeep:#01754F; --greenTint:#E6F4EF;
  --gold:#C29B3A; --goldText:#8A6D1F; --goldTint:#FBF5E3;
  --ink:#1C1B18; --body:#3A3A35; --secondary:#55554F; --muted:#6B6B66;
  --hairline:#E6E6E3; --surface:#F6F6F4;
}
*{box-sizing:border-box; margin:0; padding:0;}
body{font-family:'Schibsted Grotesk',-apple-system,sans-serif; color:var(--ink); background:#fff; -webkit-font-smoothing:antialiased;}
.wrap{max-width:1120px; margin:0 auto; padding:0 32px;}
nav{border-bottom:1px solid var(--hairline);}
.navin{display:flex; align-items:center; justify-content:space-between; height:72px;}
.brand{display:flex; align-items:center; gap:10px; font-weight:800; font-size:19px; letter-spacing:-0.02em; color:var(--ink); text-decoration:none;}
.mark{width:28px; height:28px; border-radius:8px; background:url(/assets/appicon.png) center/cover no-repeat;}
.navlinks{display:flex; gap:24px; align-items:center; font-size:14.5px; font-weight:600; color:var(--secondary);}
.navlinks a{color:inherit; text-decoration:none;}
.navcta{background:var(--ink); color:#fff !important; font-weight:700; padding:10px 18px; border-radius:99px; font-size:14px;}
.pagehead{padding-top:64px; padding-bottom:12px; max-width:760px; margin:0 auto;}
.pagehead h1{font-size:44px; font-weight:800; letter-spacing:-0.03em; line-height:1.08;}
.pagehead h1 .g{color:var(--green);}
.pagehead .sub{font-size:17px; line-height:1.7; color:var(--secondary); margin-top:16px;}
.content{max-width:760px; margin:0 auto; padding:28px 32px 90px;}
.content h2{font-size:22px; font-weight:800; letter-spacing:-0.015em; margin:36px 0 10px;}
.content p{font-size:15.5px; line-height:1.75; color:var(--body); margin-top:10px;}
.content p b{color:var(--ink);}
.card{background:#fff; border:1px solid var(--hairline); border-radius:16px; padding:24px 26px; margin-top:18px;}
.tintcard{background:var(--greenTint); border:none; border-radius:16px; padding:22px 26px; margin-top:18px; font-size:14.5px; line-height:1.7; color:var(--greenDeep);}
label{display:block; font-size:13px; font-weight:700; margin:18px 0 6px; color:var(--ink);}
label .opt{color:var(--muted); font-weight:600;}
input[type=text],input[type=email],input[type=url],input[type=date],textarea,select{
  width:100%; font-family:inherit; font-size:15px; color:var(--ink);
  border:1px solid var(--hairline); border-radius:11px; padding:12px 14px; background:#fff;}
textarea{min-height:110px; resize:vertical;}
input:focus,textarea:focus,select:focus{outline:none; border-color:var(--green);}
.hint{font-size:12.5px; color:var(--muted); margin-top:5px;}
.submit{margin-top:28px; width:100%; background:var(--green); color:#fff; font-family:inherit; font-size:16px; font-weight:800; border:none; border-radius:14px; padding:15px; cursor:pointer;}
.submit:hover{background:var(--greenDeep);}
.formnote{font-size:12.5px; color:var(--muted); margin-top:12px; text-align:center;}
.hp{position:absolute; left:-9999px; opacity:0;} /* honeypot */
footer{border-top:1px solid var(--hairline); padding:30px 0 44px;}
.fin{display:flex; justify-content:space-between; align-items:center; font-size:13px; color:var(--muted); flex-wrap:wrap; gap:12px;}
.flinks{display:flex; gap:22px;}
.flinks a{color:var(--secondary); text-decoration:none; font-weight:600;}
@media(max-width:720px){ .pagehead h1{font-size:32px;} .navlinks{gap:14px; font-size:13.5px;} .navlinks a:not(.navcta){display:none;} }
