
:root{
  --cl-green:#1B7A5A;
  --cl-deep:#0E3D2C;
  --cl-gold:#F5A623;
  --cl-paper:#FFFCF5;
  --cl-rule:#E5E2D8;
  --cl-ink:#1A2320;
  --cl-muted:#5E6E66;
}
.checklists-page,.checklist-page{background:#F6F8F7}
.checklists-hero,.checklist-hero{
  padding:1.65rem 0 1.2rem;
  background:
    radial-gradient(circle at 92% 10%,rgba(245,166,35,.15),transparent 26%),
    linear-gradient(180deg,#FFFDF8 0%,#F6F8F7 100%);
  border-bottom:1px solid #E2E8E4;
}
.checklists-hero-grid,.checklist-hero-grid{
  display:grid;grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr);
  gap:1rem;align-items:end
}
.checklists-hero h1,.checklist-hero h1{
  margin:0;color:var(--cl-deep);font-size:clamp(1.65rem,3vw,2.45rem);line-height:1.12
}
.checklists-hero .lede,.checklist-hero .lede{
  max-width:67ch;margin:.62rem 0 0;color:#53625C;font-size:.92rem;line-height:1.65
}
.checklist-save-note{
  padding:.78rem .85rem;border:1px solid #D8E5DF;border-radius:12px;background:#fff;
  font-family:'Poppins',system-ui,sans-serif;font-size:.68rem;line-height:1.5;color:#486057
}
.checklist-save-note strong{display:block;color:var(--cl-deep);font-size:.72rem;margin-bottom:.15rem}
.checklists-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.72rem;
  padding:1rem 0 1.8rem
}
.checklist-card{
  min-height:225px;display:flex;flex-direction:column;padding:1rem;border:1px solid #DDE6E1;
  border-radius:14px;background:#fff;text-decoration:none;box-shadow:0 7px 22px rgba(14,61,44,.045);
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease
}
.checklist-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(14,61,44,.08);border-color:#BFD4CA}
.checklist-card .tag{
  width:max-content;max-width:100%;padding:.23rem .45rem;border-radius:7px;background:#E7F2ED;color:#166248;
  font-family:'Poppins',system-ui,sans-serif;font-size:.52rem;font-weight:700;text-transform:uppercase
}
.checklist-card h2{margin:.62rem 0 0;color:#18372C;font-size:1rem;line-height:1.25}
.checklist-card p{margin:.42rem 0 0;color:#59665F;font-size:.72rem;line-height:1.52}
.checklist-card-progress{margin-top:auto;padding-top:.8rem}
.checklist-card-progress-row{
  display:flex;justify-content:space-between;gap:.6rem;margin-bottom:.28rem;
  color:#596861;font-family:'Poppins',system-ui,sans-serif;font-size:.57rem
}
.checklist-progress-track{height:6px;overflow:hidden;border-radius:999px;background:#E9EFEC}
.checklist-progress-fill{height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#1B7A5A,#F5A623);transition:width .2s ease}
.checklist-open{
  display:inline-flex;margin-top:.62rem;color:#166248;font-family:'Poppins',system-ui,sans-serif;
  font-size:.59rem;font-weight:700
}

.checklist-back{
  display:inline-flex;margin-bottom:.7rem;color:#1B7A5A;font-family:'Poppins',system-ui,sans-serif;
  font-size:.62rem;font-weight:700;text-decoration:none
}
.checklist-layout{
  display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:.9rem;align-items:start;padding:1rem 0 1.8rem
}
.checklist-main-card{
  overflow:hidden;border:1px solid #DCE6E1;border-radius:15px;background:#fff
}
.checklist-progress-panel{
  padding:.85rem 1rem;border-bottom:1px solid #E2E9E5;background:#FBFCFB
}
.checklist-progress-top{display:flex;align-items:center;justify-content:space-between;gap:.8rem}
.checklist-progress-copy strong{
  display:block;color:#173C2F;font-family:'Poppins',system-ui,sans-serif;font-size:.82rem
}
.checklist-progress-copy span{
  color:#65736C;font-family:'Poppins',system-ui,sans-serif;font-size:.59rem
}
.checklist-reset{
  border:0;background:transparent;color:#6B7671;font-family:'Poppins',system-ui,sans-serif;
  font-size:.57rem;font-weight:600;cursor:pointer;padding:.3rem
}
.checklist-reset:hover{color:#9B3B2B}
.checklist-list{padding:.35rem .8rem .8rem}
.check-item{
  border-bottom:1px solid #EDF0EE;padding:.72rem .1rem
}
.check-item:last-child{border-bottom:0}
.check-item-line{
  display:grid;grid-template-columns:27px minmax(0,1fr);gap:.65rem;align-items:start;cursor:pointer
}
.check-item-line input{
  appearance:none;-webkit-appearance:none;width:23px;height:23px;margin:.08rem 0 0;
  border:1.5px solid #A9BBB2;border-radius:7px;background:#fff;cursor:pointer;display:grid;place-items:center
}
.check-item-line input:checked{background:#1B7A5A;border-color:#1B7A5A}
.check-item-line input:checked::after{
  content:"✓";color:#fff;font-family:'Poppins',system-ui,sans-serif;font-size:.72rem;font-weight:700;line-height:1
}
.check-item-copy strong{
  display:block;color:#23342D;font-family:'Poppins',system-ui,sans-serif;font-size:.74rem;line-height:1.42
}
.check-item.is-done .check-item-copy strong{color:#5D6E66}
.check-item-copy small{
  display:block;margin-top:.16rem;color:#7A8681;font-family:'Poppins',system-ui,sans-serif;font-size:.56rem;line-height:1.4
}
.check-item details{margin:.42rem 0 0 2.42rem}
.check-item details summary{
  width:max-content;max-width:100%;cursor:pointer;color:#1B7A5A;font-family:'Poppins',system-ui,sans-serif;
  font-size:.57rem;font-weight:700;list-style:none
}
.check-item details summary::-webkit-details-marker{display:none}
.check-item details summary::after{content:" +"}
.check-item details[open] summary::after{content:" −"}
.check-item details p{
  max-width:72ch;margin:.35rem 0 0;color:#5B6862;font-size:.72rem;line-height:1.55
}
.check-item-help{
  display:inline-flex;margin-top:.36rem;padding:.34rem .48rem;border-radius:7px;background:#F1F7F4;
  color:#17694D;font-family:'Poppins',system-ui,sans-serif;font-size:.55rem;font-weight:700;text-decoration:none
}
.check-item-help:hover{background:#E4F1EB}

.checklist-side{position:sticky;top:84px;display:grid;gap:.65rem}
.checklist-status-card,.checklist-next-card{
  padding:.85rem;border:1px solid #DCE6E1;border-radius:13px;background:#fff
}
.checklist-status-card .label{
  color:#1B7A5A;font-family:'Poppins',system-ui,sans-serif;font-size:.54rem;font-weight:700;text-transform:uppercase
}
.checklist-status-card strong{
  display:block;margin:.22rem 0;color:#0E3D2C;font-family:'Poppins',system-ui,sans-serif;font-size:1.12rem;line-height:1.2
}
.checklist-status-card p,.checklist-next-card p{margin:.3rem 0 0;color:#64716B;font-size:.68rem;line-height:1.5}
.checklist-next-card h2{margin:0;color:#203D31;font-size:.84rem}
.checklist-next-links{display:grid;gap:.35rem;margin-top:.55rem}
.checklist-next-links a{
  display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem .55rem;
  border-radius:8px;background:#F6F9F7;color:#1C5E48;font-family:'Poppins',system-ui,sans-serif;
  font-size:.57rem;font-weight:700;text-decoration:none
}
.checklist-next-links a::after{content:"→"}
.checklist-general{
  padding:.6rem .72rem;border-radius:10px;background:#FFF8EA;border:1px solid #F0D9A9;
  color:#755A24;font-size:.64rem;line-height:1.5
}

.home-2d{padding:0 0 1rem;background:#F5F7F6}
.home-2d-box{
  padding:.82rem;border:1px solid #DCE6E1;border-radius:14px;background:#fff
}
.home-2d-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:.65rem}
.home-2d-head .eyebrow{margin:0 0 .22rem;font-size:.58rem}
.home-2d-head h2{margin:0;color:#173B2E;font-size:1.05rem}
.home-2d-head p{margin:.25rem 0 0;color:#64716B;font-size:.66rem;line-height:1.45}
.home-2d-all{
  flex:none;color:#1B7A5A;font-family:'Poppins',system-ui,sans-serif;font-size:.58rem;font-weight:700;text-decoration:none
}
.home-2d-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.48rem}
.home-2d-card{
  min-height:82px;display:flex;flex-direction:column;justify-content:center;padding:.58rem .62rem;
  border:1px solid #E1E8E4;border-radius:10px;background:#F9FBFA;text-decoration:none
}
.home-2d-card strong{color:#204438;font-family:'Poppins',system-ui,sans-serif;font-size:.67rem;line-height:1.25}
.home-2d-card span{margin-top:.16rem;color:#6B7771;font-family:'Poppins',system-ui,sans-serif;font-size:.54rem;line-height:1.35}
.home-2d-card:hover{border-color:#BDD4C9;background:#F3F8F5}

@media(max-width:980px){
  .checklists-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .checklist-layout{grid-template-columns:1fr}
  .checklist-side{position:static;grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .checklists-hero-grid,.checklist-hero-grid{grid-template-columns:1fr}
  .checklists-grid{grid-template-columns:1fr}
  .checklist-side{grid-template-columns:1fr}
  .home-2d-head{align-items:flex-start}
  .home-2d-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:420px){
  .checklists-hero,.checklist-hero{padding-top:1.15rem}
  .checklist-list{padding-left:.6rem;padding-right:.6rem}
  .check-item details{margin-left:2.15rem}
  .home-2d-head{display:block}
  .home-2d-all{display:inline-flex;margin-top:.42rem}
  .home-2d-card{min-height:76px}
}
@media(max-width:340px){
  .home-2d-grid{grid-template-columns:1fr}
}
