/* HireHire policy pages — hand-drawn look shared with index.html and guides/guides.css */
:root{
  --orange:#F06A1E; --orange-deep:#C24E0A;
  --paper:#FBF5E9; --card:#FFFCF5;
  --ink:#1F2A44; --ink-soft:#4D5571;
  --line-soft:#E3D6BF;
  --pink:#F8C9D1; --blue:#C4DDF3; --green:#CDE8C2;
  --yellow:#FBE29A; --note:#FCEFB3; --mint:#E8F4DE;
  --hand:'Patrick Hand','Segoe Print','Bradley Hand','Chalkboard SE',system-ui,sans-serif;
  --r-card:22px 28px 20px 30px / 28px 20px 30px 22px;
  --r-btn:14px 20px 15px 22px / 20px 14px 22px 15px;
  --r-tape:3px 7px 4px 8px;
  --hl:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 40' preserveAspectRatio='none'%3E%3Cpath d='M3 12C40 5 110 3 197 7c2 9 1 18-3 25-60 5-130 6-189 3C1 27 1 19 3 12z' fill='%23FCE17E'/%3E%3C/svg%3E");
  --tick:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10.5' fill='%2343A35E'/%3E%3Cpath d='M7 12.4l3.3 3.3 6.8-7' fill='none' stroke='%23fff' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  --sun:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3Ccircle cx='30' cy='30' r='12' fill='%23FFE08A' stroke='%23F08A2E' stroke-width='3'/%3E%3Cpath d='M47 30h7M42 42l5 5M30 47v7M18 42l-5 5M13 30H6M18 18l-5-5M30 13V6M42 18l5-5' stroke='%23F08A2E' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E");
  --wavy:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 10'%3E%3Cpath d='M0 5c10-4 20-4 30 0s20 4 30 0 20-4 30 0 20 4 30 0' fill='none' stroke='%23D8CAB0' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
  --wavy-orange:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 10'%3E%3Cpath d='M0 5c10-4 20-4 30 0s20 4 30 0 20-4 30 0 20 4 30 0' fill='none' stroke='%23F06A1E' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E");
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:var(--hand);font-size:1.2rem;line-height:1.5;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}
/* crayon paper grain */
body::before{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.55 0 0 0 0 0.45 0 0 0 0 0.3 0 0 0 0.09 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");
}
a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:3px}
a:hover{color:var(--orange-deep)}
.wrap{max-width:840px;margin:0 auto;padding:0 24px}

nav{position:sticky;top:0;z-index:50;background:rgba(251,245,233,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
nav::after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:10px;background:var(--wavy) repeat-x 0 50%/120px 10px;pointer-events:none}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:72px;max-width:1180px;margin:0 auto;padding:0 24px;gap:12px}
.logo{display:flex;align-items:center;gap:10px;font-size:1.65rem;line-height:1;color:var(--ink);text-decoration:none;-webkit-text-stroke:.6px currentColor}
.logo:hover{color:var(--ink)}
.logo-mark{width:40px;height:40px;display:block;rotate:-5deg}
.btn-app{
  display:inline-block;background:var(--orange);color:#fff !important;text-decoration:none;
  font-size:1.2rem;line-height:1;padding:10px 20px 9px;white-space:nowrap;
  border:2.5px solid #C9520D;border-radius:var(--r-btn);
  box-shadow:inset 0 -4px 0 rgba(120,40,0,.16), 0 8px 18px -8px rgba(240,106,30,.6);
  transition:transform .15s ease;
}
.btn-app:hover{transform:translateY(-2px) rotate(-1deg)}
.btn-app:focus-visible{outline:3px dashed var(--orange);outline-offset:4px}

header.doc{padding:60px 0 32px}
/* section label as a strip of washi tape */
.doc-kicker{
  display:inline-block;font-size:1.2rem;line-height:1.2;color:var(--ink);
  padding:5px 16px 4px;margin-bottom:18px;
  background:var(--yellow);border-radius:var(--r-tape);rotate:-2deg;
}
h1,h2,h3{font-weight:400;color:var(--ink)}
h1{font-size:clamp(2.6rem,5.4vw,3.7rem);line-height:1.04;-webkit-text-stroke:.022em currentColor;margin-bottom:14px}
.doc-meta{font-size:1.08rem;color:var(--ink-soft)}
.doc-meta b{color:var(--ink);font-weight:400;-webkit-text-stroke:.4px currentColor}

/* "The short version": the green checklist panel from the posters */
.short{position:relative;background:var(--mint);border-radius:var(--r-card);padding:28px 32px;margin:8px 0 12px;rotate:-.4deg}
.short::after{
  content:"";position:absolute;top:-18px;right:-14px;width:42px;height:42px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M20 3c1.8 10.5 5.6 14.6 17 17-11.4 2.4-15.2 6.5-17 17-1.8-10.5-5.6-14.6-17-17 11.4-2.4 15.2-6.5 17-17z' fill='%23FFD34D' stroke='%231F2A44' stroke-width='2.2' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
}
.short h2{font-size:1.6rem;line-height:1.1;-webkit-text-stroke:.5px currentColor;margin-bottom:14px;display:flex;align-items:center;gap:10px}
.short h2::before{content:"";flex:none;width:34px;height:34px;background:var(--sun) center/contain no-repeat}
.short ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.short li{padding-left:36px;font-size:1.2rem;background:var(--tick) no-repeat 0 .12em/24px 24px}
.short b{font-weight:400;-webkit-text-stroke:.4px currentColor}
.short .fine{margin-top:14px;font-size:1.05rem;color:var(--ink-soft)}

main{padding:24px 0 0}
main h2{
  width:fit-content;font-size:2.1rem;line-height:1.1;-webkit-text-stroke:.6px currentColor;
  margin:48px 0 14px;padding:0 .12em;
  background:var(--hl) no-repeat 0 92%/100% 58%;
}
/* numbered sections get the posters' pastel number blobs */
main h2.sec{position:relative;width:auto;padding:0 0 0 64px;background:none}
.sec-num{
  position:absolute;left:0;top:-6px;width:50px;height:50px;
  border-radius:52% 48% 55% 45% / 48% 55% 45% 52%;background:var(--pink);
  display:grid;place-items:center;padding-top:2px;font-size:1.75rem;line-height:1;
}
main h2.sec:nth-of-type(4n+2) .sec-num{background:var(--blue)}
main h2.sec:nth-of-type(4n+3) .sec-num{background:var(--green)}
main h2.sec:nth-of-type(4n+4) .sec-num{background:var(--yellow)}
.sec-title{
  padding:0 .12em;background:var(--hl) no-repeat 0 92%/100% 58%;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;
}
main h3{font-size:1.5rem;line-height:1.15;-webkit-text-stroke:.4px currentColor;margin:28px 0 8px}
main h3::before{
  content:"";display:inline-block;width:22px;height:13px;margin-right:10px;vertical-align:.1em;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 13'%3E%3Cpath d='M2 8c4-4 8 3 14-1M12.5 2.5l5 4.5-5.5 3' fill='none' stroke='%23F06A1E' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
}
main p{margin:0 0 12px;color:var(--ink);font-size:1.2rem}
main b{font-weight:400;-webkit-text-stroke:.4px currentColor}
/* clause numbers read like a pencilled margin note */
main p b.cl{color:var(--orange-deep);margin-right:4px}
main ul,main ol{margin:0 0 14px 4px}
main ul{list-style:none}
main ul li{position:relative;padding-left:26px}
main ul li::before{content:"";position:absolute;left:2px;top:.62em;width:10px;height:10px;border-radius:52% 48% 55% 45% / 48% 55% 45% 52%;background:var(--orange)}
main ol{padding-left:24px}
main li{margin-bottom:6px;font-size:1.2rem}
.muted{color:var(--ink-soft)}
/* sticky note with a strip of tape */
.callout{
  position:relative;background:var(--note);
  padding:26px 26px 20px;margin:32px 0 24px;rotate:-.8deg;
  border-radius:4px 8px 5px 10px;box-shadow:0 16px 26px -18px rgba(31,42,68,.55);
}
.callout::before{
  content:"";position:absolute;top:-12px;left:50%;width:110px;height:26px;
  translate:-50% 0;rotate:3deg;
  background:rgba(255,255,255,.62);box-shadow:0 1px 2px rgba(31,42,68,.12);
}

/* Tables: inked card with a yellow header band */
table{
  width:100%;border-collapse:separate;border-spacing:0;margin:20px 0 28px;font-size:1.1rem;line-height:1.4;
  background:var(--card);border:2.5px solid var(--ink);border-radius:var(--r-card);overflow:hidden;
}
th{
  text-align:left;font-weight:400;font-size:1.18rem;color:var(--ink);-webkit-text-stroke:.4px currentColor;
  padding:12px 14px 10px;background:var(--yellow);border-bottom:2.5px solid var(--ink);
}
td{padding:12px 14px;border-bottom:2px dashed var(--line-soft);vertical-align:top}
tr:last-child td{border-bottom:0}
td.who{white-space:normal;-webkit-text-stroke:.4px currentColor}
tr.hl td{background:#FFF3E6}
main table:nth-of-type(3n+2) th{background:var(--blue)}
main table:nth-of-type(3n+3) th{background:var(--pink)}
.pos{color:#2F8A4C;-webkit-text-stroke:.4px currentColor}
.neg{color:var(--orange-deep);-webkit-text-stroke:.4px currentColor}

.legal-note{
  position:relative;
  background:rgba(255,252,245,.7);border:2px dashed #B9B2A2;border-radius:var(--r-card);
  padding:18px 20px 16px;margin:36px 0 28px;font-size:1.08rem;color:var(--ink-soft);
}
/* paperclip holding the fine print */
.legal-note::before{
  content:"";position:absolute;top:-20px;left:26px;width:22px;height:48px;rotate:-10deg;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-2 -2 24 50'%3E%3Cpath d='M13 14v20a4 4 0 0 1-8 0V9a6.5 6.5 0 0 1 13 0v25a9 9 0 0 1-18 0V14' fill='none' stroke='%238E95AB' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat;
}
/* hand-drawn illustration beside each policy title */
.doc-art{float:right;width:116px;height:auto;margin:0 0 12px 20px}

/* houses-and-trees strip to close each page, like the posters */
main::after{
  content:"";display:block;max-width:792px;margin:64px auto 0;
  aspect-ratio:1260/120;background:url(guides/village.svg) center/contain no-repeat;
}
footer{position:relative;padding:36px 0 40px;font-size:1.12rem;color:var(--ink-soft)}
footer::before{content:"";position:absolute;left:0;right:0;top:-5px;height:10px;background:var(--wavy) repeat-x 0 50%/120px 10px}
.foot-inner{max-width:840px;margin:0 auto;padding:0 24px;display:flex;flex-direction:column;gap:10px}
.foot-links{display:flex;gap:6px 22px;flex-wrap:wrap}
.foot-links a{color:var(--ink-soft);text-decoration:none}
.foot-links a:hover{color:var(--ink);background:var(--wavy-orange) repeat-x 0 100%/60px 6px}
@media(max-width:640px){
  header.doc{padding:40px 0 22px}
  .short{padding:22px 20px;rotate:0deg}
  .short::after{right:-4px}
  table{display:block;overflow-x:auto}
  .doc-art{width:76px;margin:0 0 8px 12px}
  main h2.sec{padding-left:56px}
  .sec-num{width:44px;height:44px;font-size:1.5rem;top:-5px}
}
@media(max-width:480px){
  .wrap{padding:0 16px}
  .nav-inner{padding:0 16px;height:64px}
  .logo{font-size:1.45rem}
  .logo-mark{width:36px;height:36px}
  .btn-app{padding:9px 16px 8px;font-size:1.1rem}
  h1{font-size:2.4rem}
  .callout{padding:24px 18px 18px}
  main h2{font-size:1.85rem;margin-top:38px}
}
