

body.d1.warm h1{
  font-size:clamp(1.875rem,1.35rem + 2.7vw,3rem);   
  font-weight:600;line-height:1.1;letter-spacing:0;max-width:24ch;
}
body.d1.warm h2{
  font-size:1.6rem;                                  
  font-weight:600;line-height:1.12;letter-spacing:0;
  max-width:38ch;                                    
  margin-bottom:1.4rem;
}

body.d1.warm .prose{line-height:1.6}                 
body.d1.warm .prose p{margin-bottom:1.4rem}          
body.d1.warm .prose p:last-child{margin-bottom:0}
body.d1.warm .lead{letter-spacing:0;line-height:1.6}
body.d1.warm .deck{margin-bottom:1.4rem}

body.d1.warm .deck::before{background:var(--ink)}    

body.d1.warm .hero-quiet{padding:4.5rem 0 3.5rem;background:var(--paper)}
body.d1.warm .hero-quiet .lead{margin-top:1.4rem}

body.d1.warm section.mod{padding:0}
body.d1.warm section.mod > .container{
  border-top:1px solid var(--inkline);               
  padding-top:3.5rem;padding-bottom:3.5rem;
}

body.d1.warm section.mod--key > .container{border-top:3px solid var(--ink)}  

body.d1.warm section.people .prose > p{border-top:0;padding-top:0}

body.d1.warm .plink,body.d1.warm .rowlinks a,body.d1.warm .readon a{
  color:var(--rec-link);                             
  text-decoration:underline;text-decoration-color:currentColor;
  text-decoration-thickness:max(1px,.0625rem);
  text-underline-offset:.1578em;
  transition:text-decoration-thickness var(--hov) var(--ease-hov);
}
body.d1.warm .plink:visited{color:var(--rec-visited)}               
body.d1.warm .plink:hover,body.d1.warm .plink:focus-visible{
  text-decoration-thickness:max(3px,.1875rem,.12em);text-decoration-skip-ink:none;
}
body.d1.warm .rowlinks .sep{color:var(--ink-mut)}                   

body.d1.warm .btn-primary{
  background:var(--ink);color:var(--paper-hi);        
  border:0;border-radius:0;box-shadow:none;
  font-size:1.0625rem;font-weight:600;padding:.85rem 1.5rem;
  transition:background var(--hov) var(--ease-hov);
}
body.d1.warm .btn-primary:hover{background:var(--navy-deep);box-shadow:none}  
body.d1.warm .btn-primary:active{transform:none}

body.d1.warm .btn-ghost,body.d1.warm .lt .btn-ghost{
  background:transparent;color:var(--ink);
  border:1px solid var(--inkline);border-radius:0;   
  font-size:1rem;padding:.7rem 1.2rem;transition:background var(--hov) var(--ease-hov);
}
body.d1.warm .btn-ghost:hover,body.d1.warm .lt .btn-ghost:hover{background:rgba(21,34,59,.06)}
body.d1.warm .btn-ghost:active{transform:none}
body.d1.warm .btnrow{margin-top:2.2rem}
body.d1.warm .undercta{color:var(--ink-mut);margin-top:.9rem}       

body.d1.warm nav.glass a.npill{
  background:none;border:1px solid var(--inkline);border-radius:0;
  padding:.45rem .9rem;margin-left:auto;
  color:var(--ink);font-weight:600;text-decoration:none;
  box-shadow:none;transition:background var(--hov) var(--ease-hov);
}
body.d1.warm nav.glass a.npill:hover{background:rgba(21,34,59,.06);box-shadow:none;text-decoration:none}
body.d1.warm nav.glass a.npill:active{transform:none}
body.d1.warm nav.glass a.nl[aria-current="page"]{
  color:var(--ink);text-decoration:underline;text-decoration-color:currentColor;
  text-decoration-thickness:max(2px,.125rem);text-underline-offset:.1578em;
}
body.d1.warm nav.glass .wordmark[aria-current="page"]{text-decoration:none}

body.d1.warm .cue{
  text-align:left;color:var(--ink);font-size:1rem;letter-spacing:0;
  max-width:70rem;margin:0 auto;                     
  padding:1.4rem 1.5rem;text-decoration:underline;
  text-decoration-color:currentColor;text-decoration-thickness:max(1px,.0625rem);
  text-underline-offset:.1578em;
}
body.d1.warm .cue:hover{text-decoration-thickness:max(3px,.1875rem,.12em)}

body.d1.warm .steps li{padding-left:3.75rem;margin-bottom:1.4rem}  
body.d1.warm .steps li::before{
  width:2.25rem;text-align:right;color:var(--ink);                 
  font-size:1rem;font-weight:600;line-height:1.6;
  font-variant-numeric:tabular-nums;
}

body.d1.warm #philip{scroll-margin-top:22rem}                       

body.d1.warm #philip:target,
body.d1.warm #philip:focus,
body.d1.warm #philip:focus-visible{
  outline:none;
  border-left:3px solid var(--ink);                                 
  padding-left:1.2rem;margin-left:-1.2rem;
}

@media(max-width:640px){
  body.d1.warm{font-size:1.0625rem}
  body.d1.warm h2{font-size:1.3125rem;max-width:none}
  body.d1.warm .hero-quiet{padding:2.4rem 0 2.5rem}
  body.d1.warm section.mod > .container{padding-top:2.5rem;padding-bottom:2.5rem}
  body.d1.warm .steps li{padding-left:2.2rem}
  body.d1.warm .steps li::before{width:1.5rem;text-align:left}
  body.d1.warm #philip{scroll-margin-top:29.5rem}                   
  
}

@media print{
  body.d1.warm nav.glass,body.d1.warm .cue,body.d1.warm .btnrow,
  body.d1.warm .undercta{display:none}
  body.d1.warm h1{font-size:20pt;line-height:1.15}
  body.d1.warm h2{font-size:14pt;line-height:1.15}
  body.d1.warm section.mod > .container{padding-top:.8rem;padding-bottom:.8rem;border-top-color:#000}
  body.d1.warm section.mod--key > .container{border-top:3px solid #000}
  body.d1.warm section.mod{break-inside:avoid-page}
  body.d1.warm .plink,body.d1.warm .rowlinks a,body.d1.warm .readon a{color:#000}
}
