:root{
    --paper:#f4ede0; --paper-2:#efe6d6; --ink:#211b14; --ink-soft:#5c5142;
    --oxblood:#7c2d27; --oxblood-deep:#5e211d; --gold:#bd9347; --gold-soft:#d8b870;
    --line:#d8ccb6; --max:920px; --ease:cubic-bezier(.2,.7,.2,1);
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{
    background:var(--paper); color:var(--ink);
    font-family:"Hanken Grotesk",system-ui,sans-serif; font-weight:400; line-height:1.65;
    -webkit-font-smoothing:antialiased; overflow-x:hidden; position:relative;
  }
  body::before{
    content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;
    background:
      radial-gradient(120% 80% at 75% -10%, #fbf6ec 0%, transparent 55%),
      radial-gradient(120% 90% at 0% 110%, #ece0cc 0%, transparent 50%),
      var(--paper);
  }
  body::after{
    content:"";position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.05;mix-blend-mode:multiply;
    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.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  }
  ::selection{background:var(--oxblood);color:var(--paper)}
  .wrap{max-width:var(--max);margin:0 auto;padding:0 28px}
  h1,h2,h3{font-family:"Fraunces",Georgia,serif;font-weight:430;line-height:1.08;letter-spacing:-.01em}

  /* nav */
  header.nav{display:flex;align-items:center;justify-content:space-between;padding:24px 28px;max-width:var(--max);margin:0 auto}
  .brand{display:flex;align-items:center;gap:11px;font-family:"Fraunces",serif;font-weight:500;font-size:1.3rem;color:var(--ink);text-decoration:none}
  .brand .mark{width:26px;height:26px;flex:0 0 auto}
  .back{font-size:.92rem;font-weight:500;color:var(--ink);opacity:.78;text-decoration:none;display:inline-flex;align-items:center;gap:.45em;transition:opacity .25s}
  .back:hover{opacity:1;color:var(--oxblood)}

  /* hero */
  .head{padding:48px 0 14px}
  .eyebrow{font-family:"Hanken Grotesk",sans-serif;font-weight:600;font-size:.72rem;letter-spacing:.32em;text-transform:uppercase;color:var(--oxblood)}
  .head h1{font-size:clamp(2.3rem,6vw,3.6rem);margin:.3em 0 .35em}
  .head h1 em{font-style:italic;color:var(--oxblood);font-weight:400}
  .head p{font-size:1.18rem;color:var(--ink-soft);max-width:60ch}

  .legend{display:flex;align-items:center;gap:10px;margin:26px 0 6px;font-size:.95rem;color:var(--ink-soft)}
  .badge{display:inline-flex;align-items:center;gap:.4em;background:var(--oxblood);color:var(--paper);font-family:"Hanken Grotesk",sans-serif;font-weight:600;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;padding:.3em .7em;border-radius:999px;white-space:nowrap}
  .badge::before{content:"◆";font-size:.7em}

  /* timeline */
  .phases{margin-top:18px;border-top:1px solid var(--line)}
  .phase{display:grid;grid-template-columns:64px 1fr;gap:26px;padding:32px 0;border-bottom:1px solid var(--line);position:relative}
  .phase .no{font-family:"Fraunces",serif;font-size:2rem;color:var(--oxblood);font-weight:400;line-height:1}
  .phase .no small{display:block;font-family:"Hanken Grotesk",sans-serif;font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-top:.5em;font-weight:600}
  .phase h2{font-size:1.55rem;font-weight:480;margin-bottom:.4em}
  .phase .what{color:var(--ink-soft);font-size:1.06rem;margin-bottom:.7em}
  .phase .what b{color:var(--oxblood);font-weight:600}
  .phase .you{font-size:1.06rem;color:var(--ink);margin-bottom:.7em}
  .phase .you b{color:var(--oxblood);font-weight:600}
  .gate{background:linear-gradient(165deg,#faf4e9,#efe5d3);border:1px solid var(--line);border-left:3px solid var(--oxblood);border-radius:8px;padding:.85em 1em;font-size:1rem;color:var(--ink);display:flex;flex-direction:column;gap:.35em}
  .gate .q{font-family:"Fraunces",serif;font-style:italic;font-size:1.12rem;color:var(--oxblood-deep)}
  .quiet{opacity:.92}
  .quiet .no{color:var(--gold)}
  .quiet h2{color:var(--ink-soft)}
  /* behind-the-scenes step lists */
  .craft-steps{margin:.7em 0 0;padding:0;list-style:none;counter-reset:cs}
  .craft-steps li{counter-increment:cs;position:relative;padding:.32em 0 .32em 2.2em;font-size:.99rem;color:var(--ink-soft);border-bottom:1px dotted var(--line)}
  .craft-steps li:last-child{border-bottom:none}
  .craft-steps li b{color:var(--ink);font-weight:600}
  .craft-steps li::before{content:counter(cs,decimal-leading-zero);position:absolute;left:0;top:.45em;font-family:"Fraunces",serif;font-size:.8rem;font-weight:600;color:var(--gold)}
  @media (min-width:680px){.craft-steps.two{column-count:2;column-gap:34px}.craft-steps.two li{break-inside:avoid;border-bottom:none;padding-top:.18em;padding-bottom:.18em}}

  /* sibling pages */
  .alsohelps{margin:36px 0 0;font-size:1.06rem;color:var(--ink-soft);text-align:center;line-height:1.7}
  .alsohelps a{color:var(--oxblood);text-decoration:none;font-weight:600;border-bottom:1px solid var(--gold-soft);padding-bottom:1px}
  .alsohelps a:hover{color:var(--oxblood-deep)}
  .alsohelps .dot{color:var(--gold);margin:0 .55em}

  /* closing */
  .closing{margin:46px 0 10px;background:radial-gradient(120% 140% at 80% 0%, #34211a 0%, transparent 60%),linear-gradient(160deg,#2a201a,#1c1511);color:var(--paper);border-radius:16px;padding:42px 36px;position:relative;overflow:hidden}
  .closing::before{content:"";position:absolute;inset:16px;border:1px solid rgba(216,184,112,.3);border-radius:9px;pointer-events:none}
  .closing h2{font-size:clamp(1.7rem,3.6vw,2.4rem);color:#f7efe0;max-width:24ch;margin-bottom:.4em}
  .closing h2 em{font-style:italic;color:var(--gold-soft);font-weight:400}
  .closing p{color:#cdbfa9;max-width:58ch;font-size:1.05rem}
  .closing a.cta{display:inline-block;margin-top:1.2em;background:var(--gold);color:#211b14;font-weight:600;text-decoration:none;padding:.7em 1.4em;border-radius:999px;transition:transform .2s var(--ease)}
  .closing a.cta:hover{transform:translateY(-2px)}

  footer{padding:40px 0 56px;border-top:1px solid var(--line);margin-top:30px}
  .foot{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
  .foot a.brand{font-size:1.1rem}
  .foot p{color:var(--ink-soft);font-size:.86rem}
  .foot a{color:var(--ink-soft);text-decoration:none;border-bottom:1px solid var(--line)}
  .foot a:hover{color:var(--oxblood)}

  @media (max-width:640px){
    .phase{grid-template-columns:46px 1fr;gap:16px}
    .phase .no{font-size:1.6rem}
    .closing{padding:30px 22px}
  }
  /* shared top-nav (matches the home page) */
  .nav-links{display:flex;align-items:center;gap:26px;flex-wrap:wrap;justify-content:flex-end}
  .nav-links a{color:var(--ink);text-decoration:none;font-size:.93rem;font-weight:500;opacity:.82;transition:opacity .25s,color .25s}
  .nav-links a:hover{opacity:1;color:var(--oxblood)}
  .nav-links a.btn{opacity:1}
  .btn{display:inline-flex;align-items:center;gap:.5em;background:var(--oxblood);color:#fff;font-family:"Hanken Grotesk",sans-serif;font-weight:600;font-size:.92rem;padding:.55em 1.15em;border-radius:999px;text-decoration:none;transition:transform .25s,background .25s}
  .btn:hover{background:var(--oxblood-deep);transform:translateY(-1px);color:#fff}
