:root{
    --navy:#0B1B33; --navy-deep:#071324; --paper:#F6F4EF; --white:#FFFFFF;
    --orange:#C6591C; --orange-soft:#E38A4C;
    --ink-70: rgba(246,244,239,0.72); --ink-45: rgba(246,244,239,0.45);
    --navy-70: rgba(11,27,51,0.72); --navy-45: rgba(11,27,51,0.45);
    --rule: rgba(198,89,28,0.35);
    --serif: 'Fraunces', serif; --sans: 'Inter', sans-serif;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  body{background:var(--paper); color:var(--navy); font-family:var(--sans); line-height:1.5; -webkit-font-smoothing:antialiased;}
  a{color:inherit; text-decoration:none;}
  .wrap{max-width:900px; margin:0 auto; padding:0 40px;}
  @media (max-width:640px){ .wrap{padding:0 22px;} }
  a:focus-visible, button:focus-visible{outline:2px solid var(--orange); outline-offset:3px;}

  header.site-nav{
    background:var(--paper); border-bottom:1px solid rgba(11,27,51,0.08);
    padding:22px 0;
  }
  .nav-inner{max-width:900px; margin:0 auto; padding:0 40px; display:flex; align-items:center; justify-content:space-between;}
  @media (max-width:640px){ .nav-inner{padding:0 22px;} }
  .brand{font-family:var(--serif); font-weight:500; font-size:1.02rem;}
  .brand .dot{color:var(--orange);}
  .back-link{font-size:0.82rem; letter-spacing:0.05em; text-transform:uppercase; color:var(--navy-70); font-weight:500;}
  .back-link:hover{color:var(--orange);}

  .blog-hero{padding:90px 0 60px; border-bottom:1px solid rgba(11,27,51,0.1);}
  .eyebrow{font-size:0.76rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--orange); font-weight:600; margin-bottom:18px;}
  h1{font-family:var(--serif); font-weight:500; font-size:clamp(2.2rem,5vw,3.2rem); line-height:1.08; letter-spacing:-0.01em; margin-bottom:18px;}
  h1 em{font-style:italic; font-weight:400; color:var(--orange);}
  .lede{font-size:1.02rem; color:var(--navy-70); max-width:560px; line-height:1.6;}

  .post-list{padding:20px 0 100px;}
  .post-row{
    display:grid; grid-template-columns:120px 1fr; gap:32px;
    padding:38px 0; border-bottom:1px solid rgba(11,27,51,0.1);
  }
  @media (max-width:600px){ .post-row{grid-template-columns:1fr; gap:10px;} }
  .post-date{font-size:0.8rem; letter-spacing:0.05em; text-transform:uppercase; color:var(--navy-45); padding-top:4px;}
  .post-title{font-family:var(--serif); font-size:1.5rem; font-weight:500; margin-bottom:10px; transition:color .2s ease;}
  .post-row:hover .post-title{color:var(--orange);}
  .post-excerpt{font-size:0.96rem; color:var(--navy-70); line-height:1.6; max-width:560px; margin-bottom:12px;}
  .post-read{font-size:0.78rem; letter-spacing:0.06em; text-transform:uppercase; font-weight:600; color:var(--navy); border-bottom:1px solid var(--navy); padding-bottom:2px;}
  .post-row:hover .post-read{color:var(--orange); border-color:var(--orange);}

  .empty-state{
    padding:60px 0; text-align:left; border-bottom:1px solid rgba(11,27,51,0.1);
  }
  .empty-state p{font-size:0.98rem; color:var(--navy-70); max-width:520px; line-height:1.6;}

  .newsletter-box{
    margin:0 0 90px; padding:44px 40px; background:var(--navy); color:var(--paper);
  }
  .newsletter-box .nl-eyebrow{
    font-size:0.76rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--orange-soft);
    font-weight:600; margin-bottom:12px;
  }
  .newsletter-box h3{
    font-family:var(--serif); font-weight:500; font-size:1.5rem; margin-bottom:10px; color:var(--paper);
  }
  .newsletter-box p{
    font-size:0.94rem; color:rgba(246,244,239,0.65); line-height:1.55; margin-bottom:22px; max-width:460px;
  }
  .nl-form-placeholder{
    display:flex; gap:12px; flex-wrap:wrap; max-width:460px;
  }
  .nl-form-placeholder input{
    flex:1 1 220px; padding:12px 14px; font-size:0.9rem; font-family:var(--sans);
    border:1px solid rgba(246,244,239,0.25); background:rgba(246,244,239,0.06); color:var(--paper);
  }
  .nl-form-placeholder input::placeholder{color:rgba(246,244,239,0.4);}
  .nl-form-placeholder button{
    padding:12px 22px; font-size:0.86rem; font-weight:600; letter-spacing:0.03em;
    background:var(--orange); color:var(--white); border:none; cursor:pointer;
    transition:background .2s ease;
  }
  .nl-form-placeholder button:hover{background:var(--orange-soft);}

  /* Kit newsletter form — recolor to match site brand */
  .newsletter-box .formkit-form{max-width:460px !important;}
  .newsletter-box .formkit-input{
    border-radius:0 !important; border-color:rgba(246,244,239,0.25) !important;
  }
  .newsletter-box .formkit-submit{
    border-radius:0 !important; background-color:var(--orange) !important;
    font-family:var(--sans) !important; letter-spacing:0.03em;
  }
  .newsletter-box .formkit-submit:hover{background-color:var(--orange-soft) !important;}
  .newsletter-box .formkit-powered-by-convertkit-container{margin-top:4px !important;}

  footer{background:var(--navy-deep); color:var(--ink-45); padding:48px 0;}
  .footer-inner{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px;}
  .footer-inner a{font-size:0.85rem; color:var(--ink-45);}
  .footer-inner a:hover{color:var(--orange-soft);}
