/* Saddlebag Supplies: site styles. Palette and type match the 72-Hour Kit PDF. */
@font-face{font-family:"Zilla Slab";src:url(/assets/fonts/zilla-slab-bold.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Zilla Slab";src:url(/assets/fonts/zilla-slab-semibold.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Zilla Slab";src:url(/assets/fonts/zilla-slab-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}

:root{
  --leather:#6B4226;--rust:#A8461F;--rust-dk:#8a3816;--sand:#E9DCC3;--paper:#F6EFE2;
  --char:#2E2A27;--tan:#C9A97A;--card:#fff8ec;--line:#d9c9aa;--muted:#4a443f;
  --slab:"Zilla Slab",Rockwell,"Roboto Slab","Courier New",serif;
  --body:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --wrap:1100px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;font-family:var(--body);font-size:17px;line-height:1.55;color:var(--char);background:var(--paper)}
img,svg{max-width:100%}
a{color:var(--rust)}
a:hover{color:var(--rust-dk)}
:focus-visible{outline:3px solid var(--rust);outline-offset:2px}
h1,h2,h3{font-family:var(--slab);font-weight:700;line-height:1.15;color:var(--leather);margin:0 0 .4em}
h1{font-size:clamp(2rem,5vw,3.1rem)}
h2{font-size:clamp(1.45rem,3.2vw,2rem)}
h3{font-size:1.2rem}
p{margin:0 0 1em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:10px;top:10px;background:var(--sand);padding:8px 12px;z-index:10}
.kicker{font-family:var(--slab);font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--rust);font-size:.85rem;margin:0 0 .5em}
.rule{height:6px;border-top:2px solid var(--leather);border-bottom:1px solid var(--leather);margin:10px 0 18px}

/* header */
.site-head{background:var(--char);color:var(--sand);border-bottom:3px solid var(--rust)}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}
.brand{display:flex;align-items:center;gap:10px;color:var(--sand);text-decoration:none;font-family:var(--slab);font-weight:700;letter-spacing:.18em;text-transform:uppercase;font-size:1.02rem}
.brand:hover{color:#fff}
.brand svg{width:34px;height:34px;flex:none}
.nav{display:flex;gap:6px 18px;flex-wrap:wrap;font-family:var(--slab);font-weight:600;font-size:.98rem}
.nav a{color:var(--tan);text-decoration:none;padding:4px 0;border-bottom:2px solid transparent}
.nav a:hover,.nav a[aria-current=page]{color:var(--sand);border-bottom-color:var(--rust)}

/* hero */
.hero{position:relative;background:radial-gradient(ellipse at 50% 30%,#4a3324 0%,#2E2A27 72%);color:var(--sand);text-align:center;padding:64px 0 0;overflow:hidden}
.hero .brandline{font-family:var(--slab);font-weight:700;letter-spacing:.35em;color:var(--tan);font-size:clamp(.9rem,2.2vw,1.15rem);text-transform:uppercase;margin:0}
.hero .tagline{font-family:var(--slab);font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--tan);font-size:clamp(.72rem,1.8vw,.85rem);margin:.6em 0 0}
.hero h1{color:var(--sand);text-transform:uppercase;font-size:clamp(2.3rem,7vw,4.4rem);letter-spacing:.02em;margin:28px 0 12px;line-height:1.02}
.hero .sub{font-family:var(--slab);font-style:italic;font-size:clamp(1.05rem,2.6vw,1.35rem);color:var(--sand);max-width:40ch;margin:0 auto 26px}
.hero .cta{margin-bottom:28px;display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.mtn{display:block;width:100%;height:clamp(70px,13vw,150px);margin-top:10px}
.mtn-band{background:var(--char);height:14px}

/* buttons */
.btn{display:inline-block;font-family:var(--slab);font-weight:700;font-size:1.08rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;padding:12px 22px;border-radius:3px;border:2px solid var(--rust);background:var(--rust);color:#fff;line-height:1.1}
.btn:hover{background:var(--rust-dk);border-color:var(--rust-dk);color:#fff}
.btn.ghost{background:transparent;color:var(--sand);border-color:var(--tan)}
.btn.ghost:hover{background:rgba(201,169,122,.15);color:#fff}
.btn.ghost.dark{color:var(--leather);border-color:var(--leather)}
.btn.ghost.dark:hover{background:var(--sand);color:var(--leather)}

/* sections */
section{padding:52px 0}
.intro{max-width:70ch}
.intro p{font-size:1.08rem}
.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:24px}
.pillar{background:var(--card);border:1.5px solid var(--leather);border-top:6px solid var(--rust);padding:16px 18px}
.pillar h3{margin-bottom:.3em}
.pillar p{margin:0;font-size:.98rem;color:var(--muted)}
.alt{background:var(--sand)}

/* product card */
.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:0;background:var(--card);border:2px solid var(--leather);box-shadow:0 0 0 4px var(--card),0 0 0 5px var(--tan);margin:6px}
.product .cover{background:radial-gradient(ellipse at 50% 30%,#4a3324 0%,#2E2A27 75%);color:var(--sand);text-align:center;padding:28px 16px 0;display:flex;flex-direction:column;justify-content:space-between}
.product .cover .t{font-family:var(--slab);font-weight:700;font-size:clamp(1.6rem,3.4vw,2.2rem);text-transform:uppercase;line-height:1.02}
.product .cover .t span{display:block;color:var(--tan);font-size:.55em;letter-spacing:.3em;margin-top:8px}
.product .cover .b{font-family:var(--slab);font-weight:700;letter-spacing:.3em;color:var(--tan);font-size:.75rem;margin-bottom:14px}
.product .cover .mtn{height:80px;margin-top:18px}
.product .body{padding:24px 26px}
.product ul{padding-left:1.1em;margin:.4em 0 1.1em}
.product li{margin:.2em 0}
.badges{display:flex;gap:12px;justify-content:center;margin:20px 0 0;flex-wrap:wrap}
.badge{width:88px;height:88px;border-radius:50%;border:3px double var(--tan);display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(168,70,31,.3)}
.badge b{font-family:var(--slab);font-size:1.45rem;color:var(--sand);line-height:1}
.badge small{font-family:var(--slab);font-size:.6rem;letter-spacing:.15em;color:var(--tan);text-transform:uppercase;margin-top:3px}
.lost .btn{margin:4px}
.price-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.todo-note{font-size:.85rem;color:var(--muted);font-style:italic}

/* live list cards */
.lists{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.listcard{background:var(--card);border:1.5px solid var(--leather);padding:18px 20px}
.listcard h3 a{color:var(--leather);text-decoration:none}
.listcard h3 a:hover{color:var(--rust)}
.jumps{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.jumps a{font-family:var(--slab);font-weight:700;text-decoration:none;border:1.5px solid var(--rust);color:var(--rust);padding:3px 10px;border-radius:2px}
.jumps a:hover{background:var(--rust);color:#fff}
.soon{border-style:dashed;color:var(--muted)}
.soon h3{color:var(--muted)}

/* notes */
.note{background:var(--sand);border-left:5px solid var(--rust);padding:12px 16px;margin:14px 0;font-size:.97rem}
.note p:last-child{margin:0}
.note.disclose{background:var(--card);border:1.5px solid var(--leather);border-left:6px solid var(--rust)}
.note.med{font-size:.9rem;margin:0;padding:6px 10px;border-left-width:4px}
.meta{display:flex;flex-wrap:wrap;gap:6px 22px;font-family:var(--slab);font-weight:600;color:var(--leather);margin:8px 0 4px}
.template-flag{background:#fff3cd;border:1.5px dashed var(--rust);padding:10px 14px;font-size:.95rem;margin:0 0 22px}

/* list page */
.page-head{background:var(--char);color:var(--sand);padding:40px 0 0;position:relative}
.page-head h1{color:var(--sand)}
.page-head p{color:var(--sand);max-width:68ch}
.page-head .kicker{color:var(--tan)}
.tiernav{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0 6px}
.tiernav a{display:block;text-decoration:none;background:var(--card);border:1.5px solid var(--leather);border-top:6px solid var(--rust);padding:12px 14px;color:var(--char)}
.tiernav a:hover{background:#fff}
.tiernav .amt{font-family:var(--slab);font-weight:700;font-size:1.9rem;color:var(--rust);line-height:1}
.tiernav .nm{font-family:var(--slab);font-weight:700;color:var(--leather);display:block}
.tiernav small{color:var(--muted)}
.tier{padding:36px 0 18px;scroll-margin-top:12px}
.tierhead{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;border-bottom:2px solid var(--leather);padding-bottom:8px;margin-bottom:10px}
.tierhead .amt{font-family:var(--slab);font-weight:700;font-size:clamp(2.4rem,6vw,3.4rem);color:var(--rust);line-height:.9}
.tierhead h2{margin:0}
.tierhead p{margin:0;color:var(--muted)}
.tier .small{font-size:.9rem;color:var(--muted)}
table.items{width:100%;border-collapse:collapse;font-size:.95rem;background:var(--card)}
.sr-only,table.items caption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
table.items th{background:var(--leather);color:var(--sand);font-family:var(--slab);font-weight:600;text-align:left;padding:8px 10px;letter-spacing:.03em;position:sticky;top:0;z-index:1}
table.items td{padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top}
table.items tr.cat th{position:static;background:var(--sand);color:var(--leather);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.92rem;border-bottom:1px solid var(--tan)}
table.items td.it{font-weight:600}
table.items td.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
table.items td.why{color:var(--muted)}
table.items td.store{white-space:nowrap}
table.items .ea{display:block;font-size:.8rem;color:var(--muted)}
table.items tr.tot td{background:var(--char);color:var(--sand);font-family:var(--slab);font-weight:700;font-size:1.05rem;border:0}
table.items tr.medrow td{background:var(--card);padding:0 10px 8px;border-bottom:1px solid var(--line)}
.shop{display:inline-block;font-family:var(--slab);font-weight:700;text-decoration:none;font-size:.9rem;background:var(--rust);color:#fff;padding:5px 10px;border-radius:2px;white-space:nowrap}
.shop:hover{background:var(--rust-dk);color:#fff}
.na{color:var(--muted);font-size:.85rem}
.totop{font-family:var(--slab);font-weight:600;font-size:.95rem}

/* prose pages */
.prose{max-width:72ch;padding:44px 20px}
.prose h2{margin-top:1.4em}
.prose li{margin:.3em 0}

/* footer */
.site-foot{background:var(--char);color:var(--tan);font-size:.92rem;margin-top:30px}
.site-foot .mtn{height:60px;margin:0;background:var(--paper)}
.site-foot .wrap{padding-top:22px;padding-bottom:28px;display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between}
.site-foot a{color:var(--sand)}
.site-foot nav{display:flex;gap:6px 18px;flex-wrap:wrap}
.site-foot .fb{font-family:var(--slab);font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--sand)}
.site-foot p{margin:.2em 0}

/* 404 */
.lost{text-align:center;padding:70px 20px 40px}
.lost .big{font-family:var(--slab);font-weight:700;font-size:clamp(4rem,14vw,7rem);color:var(--rust);line-height:1}

/* mobile */
@media (max-width:760px){
  body{font-size:16px}
  section{padding:38px 0}
  .hero{padding-top:44px}
  .hero .tagline{letter-spacing:.1em}
  .nav{gap:4px 14px;font-size:.92rem}
  .brand{font-size:.92rem;letter-spacing:.14em}
  .product{grid-template-columns:1fr}
  .tiernav{grid-template-columns:1fr}
  .tiernav a{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
  /* stacked item rows */
  table.items thead{display:none}
  table.items,table.items tbody,table.items tr,table.items td,table.items th{display:block;width:100%}
  table.items tr{border-bottom:1px solid var(--line);padding:10px 12px}
  table.items tr.cat{padding:0}
  table.items tr.cat th{padding:8px 12px}
  table.items tr.medrow{padding:8px 12px}
  table.items tr.medrow td{padding:0}
  table.items td{border:0;padding:2px 0}
  table.items td.it{font-size:1.02rem;padding-right:0}
  table.items td.num{text-align:left}
  table.items td.num,table.items td.store{display:inline-block;width:auto;margin-right:16px;font-size:.93rem}
  table.items td.why{margin:2px 0}
  table.items td[data-label]::before{content:attr(data-label) ": ";font-weight:600;color:var(--leather);font-family:var(--slab)}
  table.items td.it::before,table.items td.why::before,table.items td.shopcell::before{content:none}
  table.items .ea{display:inline;margin-left:6px}
  table.items td.shopcell{padding-top:8px}
  table.items tr.tot{padding:0}
  table.items tr.tot td{padding:10px 12px}
  table.items tr.tot td:empty{display:none}
}
@media print{
  .site-head,.site-foot,.shop,.tiernav,.totop,.hero .cta{display:none}
  body{background:#fff}
  table.items th{position:static}
}

/* ---------- ranch ladder: ranks, badges, quiz, roles, planner ---------- */
[hidden]{display:none!important}
.rank-badge{flex:none;display:block}
.rank-badge.sm{width:28px;height:28px}
.rank-badge.xs{width:22px;height:22px}

/* rank bar under the header */
.rankbar{background:#3a3430;border-top:1px solid #4a423b}
.rankbar .wrap{display:flex;align-items:center;gap:6px 14px;flex-wrap:wrap;padding-top:6px;padding-bottom:6px}
.rb-label{font-family:var(--slab);font-weight:700;letter-spacing:.2em;text-transform:uppercase;font-size:.78rem;color:var(--tan);text-decoration:none}
.rb-label:hover{color:var(--sand)}
.rankbar ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 6px;counter-reset:none}
.rankbar li{display:flex;align-items:center}
.rankbar li+li::before{content:"\203A";color:var(--tan);margin:0 6px 0 0;font-family:var(--slab);font-weight:700}
.rankbar a:not(.rb-label){display:flex;align-items:center;gap:6px;color:var(--sand);text-decoration:none;font-family:var(--slab);font-weight:600;font-size:.9rem;padding:2px 8px 2px 3px;border-radius:14px;border:1px solid transparent}
.rankbar a:not(.rb-label):hover{border-color:var(--tan)}
.rankbar a[aria-current=page]{background:var(--rust);border-color:var(--rust)}

/* rank tag (list page, list cards) */
.rank-tag{display:inline-flex;align-items:center;gap:8px;text-decoration:none;background:var(--card);border:1.5px solid var(--leather);border-radius:20px;padding:3px 12px 3px 4px;color:var(--leather);font-family:var(--slab);font-weight:700}
.rank-tag small{font-weight:600;color:var(--muted);font-size:.78rem;letter-spacing:.06em}
.rank-tag:hover{background:#fff}
.headtag,.listtag{margin:0 0 .6em}
.page-head .rank-tag{background:rgba(233,220,195,.12);border-color:var(--tan);color:var(--sand)}
.page-head .rank-tag small{color:var(--tan)}

/* homepage rank cards */
.ranks-intro{max-width:70ch;font-size:1.05rem}
.rankgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin-top:20px}
.rankcard{grid-column:span 2;background:var(--card);border:1.5px solid var(--leather);border-top:7px solid var(--rust);padding:16px 18px;display:flex;flex-direction:column;transition:box-shadow .2s}
.rankcard:nth-child(4),.rankcard:nth-child(5){grid-column:span 3}
.rc-greenhorn{border-top-color:#5E7A4A}.rc-ranch-hand{border-top-color:#6B4226}.rc-wrangler{border-top-color:#A8461F}.rc-trail-boss{border-top-color:#2E2A27}.rc-homestead{border-top-color:#3E5C58}
.rc-top{display:flex;gap:12px;align-items:center;margin-bottom:10px}
.rc-top h3{margin:0;font-size:1.45rem}
.rc-num{margin:0;font-family:var(--slab);font-weight:600;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--rust)}
.rc-motto{margin:0;font-family:var(--slab);font-style:italic;color:var(--muted);font-size:.95rem}
.rankcard>p{font-size:.98rem}
.rankcard dl{margin:0 0 12px;font-size:.93rem}
.rankcard dt{font-family:var(--slab);font-weight:700;color:var(--leather);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}
.rankcard dd{margin:0 0 8px;color:var(--muted)}
.rc-link{margin-top:auto;font-family:var(--slab);font-weight:700;text-decoration:none}
.rankcard.suggested{box-shadow:0 0 0 3px var(--rust),0 6px 18px rgba(46,42,39,.25)}

/* quiz */
.quiz{margin-top:28px;background:var(--sand);border:2px solid var(--leather);padding:20px 22px}
.quiz h3{font-size:1.35rem}
.quiz .small{font-size:.9rem;color:var(--muted)}
.quiz fieldset{border:0;border-top:1px solid var(--tan);margin:0;padding:12px 0}
.quiz legend{font-family:var(--slab);font-weight:700;color:var(--leather);padding:0;margin-bottom:8px;font-size:1.05rem}
.qn{display:inline-block;width:1.6em;height:1.6em;line-height:1.6em;text-align:center;border-radius:50%;background:var(--leather);color:var(--sand);font-size:.85em;margin-right:4px}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opts label{display:flex;align-items:center;gap:6px;background:var(--card);border:1.5px solid var(--line);padding:6px 10px;border-radius:3px;cursor:pointer;font-size:.93rem}
.opts label:has(input:checked){border-color:var(--rust);background:#fff}
.opts input{accent-color:var(--rust);margin:0}
.quiz-actions{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 0}
button.btn{cursor:pointer}
.quiz-msg{margin:8px 0 0;font-weight:600;color:var(--rust-dk)}
.quiz-result{display:flex;gap:16px;align-items:center;background:var(--card);border:2px solid var(--rust);padding:14px 18px;margin-top:14px}
.quiz-result svg{width:84px;height:84px}
.qr-h{font-family:var(--slab);font-size:1.25rem;color:var(--leather);margin:0 0 4px}

/* roles (homepage chips + list page) */
.rolegrid{list-style:none;padding:0;margin:18px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}
.rolegrid a{display:flex;gap:12px;align-items:flex-start;text-decoration:none;color:var(--char);background:var(--card);border:1.5px solid var(--leather);padding:12px 14px;height:100%}
.rolegrid a:hover{background:#fff}
.rolegrid strong{display:block;font-family:var(--slab);color:var(--leather);font-size:1.1rem}
.rolegrid small{display:block;color:var(--muted);font-size:.9rem;margin:2px 0 4px}
.rolegrid em{font-family:var(--slab);font-style:normal;font-weight:600;color:var(--rust);font-size:.9rem}
.plain{font-family:var(--body);font-weight:600;font-size:.82em;color:var(--muted)}
.role-mark{flex:none}
.roleblock{margin:22px 0 10px;scroll-margin-top:12px}
.rolehead{display:flex;gap:12px;align-items:center;border-bottom:2px solid var(--leather);padding-bottom:6px;margin-bottom:8px}
.rolehead h3{margin:0;font-size:1.35rem}
.rolehead p{margin:0;color:var(--muted);font-size:.93rem}
.rolehead .amt{margin-left:auto;font-family:var(--slab);font-weight:700;color:var(--rust);font-size:1.6rem;white-space:nowrap}
.roleblock.assigned .rolehead{border-bottom-color:var(--rust)}
.roleblock.assigned .rolehead h3::after{content:"Assigned";margin-left:8px;font-size:.62em;vertical-align:middle;background:var(--rust);color:#fff;padding:2px 8px;border-radius:10px;font-family:var(--slab);letter-spacing:.06em}
abbr.est{font-size:.75rem;color:var(--rust-dk);text-decoration:none;border-bottom:1px dotted var(--rust);margin-left:4px;cursor:help}

/* planner */
.planner-wrap{padding:30px 0 10px}
.planner{background:var(--sand);border:2px solid var(--leather);padding:18px 20px}
.pl-controls{display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:10px}
.planner label{font-family:var(--slab);font-weight:700;color:var(--leather);display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.planner select{font:inherit;font-family:var(--body);font-weight:400;font-size:.95rem;padding:5px 8px;border:1.5px solid var(--leather);background:var(--card);color:var(--char);border-radius:3px;max-width:100%}
.pl-members{margin:6px 0 12px;padding-left:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:8px}
.pl-members li{background:var(--card);border:1px solid var(--line);padding:8px 10px}
.pl-table{width:100%;border-collapse:collapse;background:var(--card);font-size:.97rem}
.pl-table th{text-align:left;font-weight:600;padding:7px 10px;border-bottom:1px solid var(--line)}
.pl-table td{text-align:right;padding:7px 10px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;white-space:nowrap}
.pl-table tr.grand th,.pl-table tr.grand td{background:var(--char);color:var(--sand);font-family:var(--slab);font-weight:700;font-size:1.08rem}

/* list page bridge note */
.bridge,.bridge-inline{display:flex;gap:10px;align-items:flex-start;background:var(--card);border:1.5px dashed var(--leather);padding:8px 12px;font-size:.93rem;margin:8px 0 12px}
.bridge-inline{margin:12px 0 4px}
.lstat{font-family:var(--slab);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;color:var(--muted);margin:0 0 4px}
.lstat.live{color:#5E7A4A}.lstat.bridge-s{color:var(--rust)}
.soonlist{margin:0;padding-left:1.1em;font-size:.93rem}

/* level pages */
.level-head{padding-top:36px}
.lh-grid{display:flex;gap:26px;align-items:center}
.rank-badge.lg{width:120px;height:120px;filter:drop-shadow(0 4px 10px rgba(0,0,0,.35))}
.lh-motto{font-family:var(--slab);font-style:italic;font-size:1.25rem;color:var(--tan)!important;margin-top:-6px}
.trailprog{list-style:none;padding:0;margin:22px 0 0;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;position:relative}
.trailprog li a{display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;padding:10px 6px;border:1.5px solid var(--line);background:var(--card);color:var(--char);height:100%}
.trailprog li.here a{border:2px solid var(--rust);background:#fff;box-shadow:0 3px 10px rgba(46,42,39,.15)}
.trailprog li.ahead a{opacity:.7}
.trailprog li.done a{border-style:dashed}
.trailprog li a:hover{opacity:1;background:#fff}
.tp-n{font-family:var(--slab);font-weight:700;color:var(--leather);margin-top:4px}
.tp-s{font-size:.8rem;color:var(--muted)}
.lvl{padding:40px 0}
.lvl-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:30px}
.goals{padding-left:1.2em;margin:0}
.goals li{margin:.35em 0}
.msgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.msgroup{background:var(--card);border:1.5px solid var(--leather);padding:14px 16px}
.checklist{list-style:none;padding:0;margin:0}
.checklist li{position:relative;padding-left:28px;margin:.45em 0;font-size:.96rem}
.checklist li::before{content:"";position:absolute;left:0;top:.18em;width:16px;height:16px;border:2px solid var(--leather);background:#fff;border-radius:2px}
.fa-ref{font-size:.85em}
.nextrank{display:flex;gap:16px;align-items:center;background:var(--char);color:var(--sand);padding:18px 20px;margin:26px 0 14px;border-left:6px solid var(--rust)}
.nextrank .kicker{color:var(--tan)}
.nextrank p{margin:0 0 10px}
.roles-mini{background:var(--card);border:1.5px solid var(--leather);border-left:6px solid var(--rust);padding:14px 18px;margin:22px 0 0}
.roles-mini.soon{border-style:dashed;border-left-style:solid;color:var(--muted)}
.roles-mini h3{margin-bottom:.3em}
.roles-mini .btn{margin:4px 6px 0 0;font-size:.92rem;padding:9px 14px}
.lvl-back{margin-top:10px}
.foot-ranks{margin:.4em 0}
.foot-ranks span{color:var(--tan);font-family:var(--slab);font-weight:700;margin-right:4px}

@media (max-width:900px){
  .rankgrid{grid-template-columns:1fr 1fr}
  .rankcard,.rankcard:nth-child(4),.rankcard:nth-child(5){grid-column:auto}
  .rankcard:nth-child(5){grid-column:1 / -1}
}
@media (max-width:760px){
  .rankgrid{grid-template-columns:1fr}
  .rankcard:nth-child(5){grid-column:auto}
  .rankbar .wrap{gap:4px 8px}
  .rb-label{width:100%}
  .rankbar li+li::before{margin-right:2px}
  .rankbar a:not(.rb-label){font-size:.8rem;padding:2px 5px 2px 2px;gap:4px}
  .lh-grid{gap:14px}
  .rank-badge.lg{width:76px;height:76px}
  .trailprog{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}
  .trailprog .tp-s{display:none}
  .trailprog .tp-n{font-size:.72rem}
  .trailprog svg{width:30px;height:30px}
  .trailprog li a{padding:6px 2px}
  .lvl-grid{grid-template-columns:1fr;gap:10px}
  .nextrank{flex-direction:column;align-items:flex-start}
  .quiz-result{flex-direction:column;align-items:flex-start}
  .rolegrid{grid-template-columns:1fr}
  .pl-members{grid-template-columns:1fr}
  .rolehead{flex-wrap:wrap}
  .rolehead .amt{font-size:1.3rem}
  .pl-table th{font-weight:500;font-size:.9rem}
}
@media print{
  .rankbar,.quiz,.planner-wrap,.trailprog{display:none}
}
.rxcard{background:var(--card);border:1.5px solid var(--leather);border-left:6px solid var(--tan);padding:12px 16px;margin:14px 0 0;max-width:72ch}
.rxcard h4{font-family:var(--slab);font-weight:700;color:var(--leather);font-size:1.12rem;margin:0 0 .4em}
.rxcard .btn{font-size:.92rem;padding:8px 14px}
.rx-note{background:var(--sand);border-left:4px solid var(--rust);padding:6px 10px;font-size:.93rem}
.rx-disc{font-size:.85rem;color:var(--muted);margin:0}
.rxcard{max-width:none}
.rx-qs{margin:10px 0}
.rx-qs h5{font-family:var(--slab);font-weight:700;color:var(--rust);text-transform:uppercase;letter-spacing:.1em;font-size:.9rem;margin:0 0 4px}
.rx-qs .small{font-size:.88rem;color:var(--muted)}
.rx-qs{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:4px 22px}
.rx-qs h5,.rx-qs>.small{grid-column:1 / -1}
.rx-q h6{font-family:var(--slab);font-weight:700;color:var(--leather);font-size:.98rem;margin:6px 0 2px}
.rx-q .checklist li{font-size:.92rem}
@media print{.rxcard .btn{display:none}}
/* quality picker */
.pl-quality{border:0;margin:0 0 12px;padding:0}
.pl-quality legend{font-family:var(--slab);font-weight:700;color:var(--leather);margin-bottom:6px}
.pl-quality label{display:inline-flex;align-items:baseline;gap:6px;background:var(--card);border:1.5px solid var(--line);padding:7px 12px;margin:0 8px 8px 0;border-radius:3px;cursor:pointer;font-family:var(--body);font-weight:400}
.pl-quality label strong{font-family:var(--slab);color:var(--leather)}
.pl-quality label span{font-size:.88rem;color:var(--muted)}
.pl-quality label:has(input:checked){border-color:var(--rust);background:#fff;box-shadow:inset 0 -3px 0 var(--rust)}
.pl-quality input{accent-color:var(--rust)}
.pick{display:block;font-weight:400;font-size:.82rem;color:var(--rust-dk);margin-top:2px}
.qlabel{font-weight:400;font-size:.85em;opacity:.85}
.note.scope{background:var(--card);border:1.5px solid var(--leather);border-left:6px solid var(--tan)}
code{font-size:.88em;background:var(--sand);padding:0 4px;border-radius:2px}
.pl-members{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr))}
.pl-members li{min-width:0}
.pl-members label{display:block}
.pl-members select{display:block;width:100%;margin-top:4px}
.rolegrid{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr))}

/* ---------------------------------------------------------------- General Store theme (Oct 2026)
   Wood, paper, price tags, and ledger lines are pure CSS gradients: no images, nothing hotlinked. */
:root{
  --wood-1:#5a3820;--wood-2:#6B4226;--wood-3:#7a4d2d;
  --wood:repeating-linear-gradient(90deg,rgba(0,0,0,.07) 0 2px,transparent 2px 9px,rgba(255,255,255,.04) 9px 11px,transparent 11px 23px),
         linear-gradient(180deg,var(--wood-3),var(--wood-2) 55%,var(--wood-1));
  --paper-tex:radial-gradient(rgba(107,66,38,.05) 1px,transparent 1.2px) 0 0/7px 7px,
              radial-gradient(rgba(107,66,38,.035) 1px,transparent 1.3px) 3px 4px/11px 11px;
}
body{background:var(--paper-tex),var(--paper)}
.alt{background:var(--paper-tex),var(--sand)}

/* storefront sign header */
.brand.sign{background:var(--wood);border:2px solid #3b2414;box-shadow:inset 0 0 0 2px rgba(201,169,122,.35),0 2px 0 #1e1a17;border-radius:4px;padding:6px 14px 6px 8px;gap:10px}
.brand.sign .sign-txt{display:flex;flex-direction:column;line-height:1.05}
.brand.sign .sign-name{color:var(--sand);text-shadow:0 1px 0 #2a1a0f}
.brand.sign .sign-sub{font-size:.64rem;letter-spacing:.3em;color:var(--tan);margin-top:3px}
.brand.sign:hover .sign-name{color:#fff}
.site-head{background:linear-gradient(180deg,#24201d,var(--char))}

/* hero shop sign */
.storesign{display:inline-block;background:var(--wood);border:3px solid #3b2414;border-radius:6px;padding:14px 34px 12px;
  box-shadow:inset 0 0 0 3px rgba(201,169,122,.45),inset 0 0 0 7px rgba(59,36,20,.6),0 10px 24px rgba(0,0,0,.35);position:relative}
.storesign::before,.storesign::after{content:"";position:absolute;top:-34px;width:2px;height:34px;background:linear-gradient(#8f7a5c,#5c4b35)}
.storesign::before{left:22%}.storesign::after{right:22%}
.storesign .signboard{font-family:var(--slab);font-weight:700;text-transform:uppercase;color:var(--sand);letter-spacing:.14em;
  font-size:clamp(1.9rem,5.6vw,3.2rem);line-height:1;margin:.12em 0 .1em;text-shadow:0 2px 0 #2a1a0f}
.hero{padding-top:70px}
.hero h1{margin-top:30px}
.hero-store{display:inline-block;font-family:var(--slab);font-weight:700;color:var(--char);background:var(--tan);padding:6px 16px;border-radius:2px;
  letter-spacing:.04em;margin:0 auto 24px;box-shadow:0 0 0 2px var(--char),0 0 0 4px var(--tan)}

/* how the store works */
.steps{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.steps li{background:var(--card);border:1.5px solid var(--leather);padding:16px 18px 12px;position:relative}
.steps .stepn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--rust);color:#fff;
  font-family:var(--slab);font-weight:700;font-size:1.15rem;margin-bottom:6px}
.steps h3{margin:.1em 0 .3em}
.steps p{margin:0;color:var(--muted);font-size:.97rem}
.storeline{font-size:.9rem;opacity:.9}
.storenote{border-left-color:var(--leather)}

/* shelves (kit scopes) */
.anchor-alias{display:block;height:0;scroll-margin-top:12px}
.shelf .tierhead{align-items:center;border-bottom:0;padding-bottom:12px;margin-bottom:12px;
  background:linear-gradient(transparent calc(100% - 12px),transparent calc(100% - 12px)),var(--wood) bottom/100% 12px no-repeat}
.shelf .tierhead h2{font-size:clamp(1.8rem,4vw,2.4rem)}
.tiernav .nm{font-size:1.3rem}

/* price tag */
.pricetag{position:relative;background:#fbf3df;border:1.5px solid var(--leather);border-radius:4px 14px 14px 4px;padding:10px 16px 10px 30px;
  min-width:240px;box-shadow:2px 3px 0 rgba(46,42,39,.15);transform:rotate(-1.2deg)}
.pricetag::before{content:"";position:absolute;left:10px;top:50%;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:var(--paper);border:1.5px solid var(--leather)}
.pricetag .pt-h{font-family:var(--slab);font-weight:600;text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;color:var(--rust);margin:0}
.pricetag .pt-r{font-family:var(--slab);font-weight:700;font-size:1.7rem;color:var(--leather);line-height:1.1;margin:0 0 4px}
.pricetag dl{margin:0;font-size:.86rem}
.pricetag dl div{display:flex;justify-content:space-between;gap:12px;border-top:1px dashed var(--line);padding:2px 0}
.pricetag dt{color:var(--muted)}
.pricetag dd{margin:0;font-variant-numeric:tabular-nums;font-weight:600}

/* ledger totals */
table.items tr.tot td{background:#fbf3df;color:var(--char);border-top:3px double var(--leather);border-bottom:1px solid var(--leather)}
table.items tr.tot td.tt{color:var(--rust);font-size:1.2rem;text-decoration:underline double;text-underline-offset:4px}
.ledger{background:repeating-linear-gradient(180deg,#fbf3df 0 33px,#d8e2e6 33px 34px),#fbf3df;border:1.5px solid var(--leather);
  padding:10px 12px 12px 42px;position:relative}
.ledger::before{content:"";position:absolute;left:30px;top:0;bottom:0;border-left:2px solid rgba(168,70,31,.55)}
.ledger .pl-table{background:transparent}
.ledger .pl-table th,.ledger .pl-table td{border-bottom:0;height:34px;padding:0 8px}
.ledger .pl-table tr.grand th,.ledger .pl-table tr.grand td{background:transparent;color:var(--char);border-top:2px solid var(--char)}
.ledger .pl-table tr.grand td{color:var(--rust);font-size:1.25rem;text-decoration:underline double;text-underline-offset:4px}
.pl-soon{margin:6px 0;line-height:34px}
select:disabled{opacity:.55}

@media (max-width:760px){
  .steps{grid-template-columns:1fr}
  .storesign{padding:12px 18px 10px}
  .storesign::before,.storesign::after{display:none}
  .pricetag{transform:none;min-width:0;width:100%}
  .brand.sign .sign-sub{letter-spacing:.2em}
  .ledger{padding-left:30px}
  .ledger::before{left:20px}
}
@media print{
  .shelf .tierhead{background:none;border-bottom:2px solid #000}
  .pricetag{transform:none;box-shadow:none}
  .ledger{background:none}
}

/* ---------------------------------------------------------------- Your Shopping List (generated in the browser) */
.btn-big{font-size:1.25rem;padding:15px 30px;box-shadow:0 4px 0 #5e2510}
.hero .cta-2{margin-top:-6px}
.shoplist{margin-top:22px;background:#fffdf7;border:1.5px solid var(--leather);box-shadow:0 0 0 5px #fffdf7,0 0 0 6.5px var(--tan),4px 6px 0 6px rgba(46,42,39,.12);padding:22px 24px 16px}
.sl-head{text-align:center;border-bottom:3px double var(--leather);padding-bottom:10px;margin-bottom:12px}
.sl-store{font-family:var(--slab);font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--rust);font-size:.8rem;margin:0}
.sl-head h3{font-size:clamp(1.6rem,3.6vw,2.2rem);margin:.15em 0 .2em}
.sl-meta{font-family:var(--slab);font-weight:600;color:var(--leather);margin:0 0 .4em}
.sl-promise{color:var(--muted);margin:0}
.sl-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 12px}
.sl-actions .btn{font-size:.95rem;padding:9px 16px}
.sl-status{font-size:.92rem;color:var(--leather)}
.sl-url{flex:1 1 100%;font:inherit;font-size:.9rem;padding:6px 8px;border:1px solid var(--line);background:#fff}
.sl-carts{border:1.5px dashed var(--leather);padding:10px 14px;margin:0 0 14px;background:var(--card)}
.sl-cart{margin:8px 0}
.sl-cart .cartbtn{font-size:.95rem;padding:9px 16px}
.cart-disc{margin:.4em 0 0}
.sl-separate{color:var(--muted);margin:.3em 0 0}
.sl-group{padding:0;margin:0 0 14px}
.sl-group h4{font-family:var(--slab);font-size:1.15rem;color:var(--leather);margin:.6em 0 .3em}
.sl-note{font-size:.88rem;margin:.2em 0 .5em}
.sl-table{width:100%;border-collapse:collapse;font-size:.95rem}
.sl-table th{font-family:var(--slab);font-weight:600;text-align:left;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1.5px solid var(--leather);padding:4px 6px}
.sl-table td{border-bottom:1px solid #e6dcc6;padding:6px;vertical-align:top}
.sl-table tr.sl-cat th{text-transform:none;letter-spacing:0;font-size:.92rem;color:var(--rust);border-bottom:1px solid var(--line);padding-top:10px}
.sl-chk{width:34px;text-align:center}
.sl-chk input{width:20px;height:20px;accent-color:var(--rust);margin:0}
.sl-item label{cursor:pointer}
.sl-item small{display:block;color:var(--muted);font-size:.8rem}
.sl-table input:checked + *{text-decoration:line-through}
.sl-table tr:has(input:checked) .sl-item{text-decoration:line-through;color:var(--muted)}
.sl-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.sl-shop{white-space:nowrap;font-size:.9rem}
.sl-total{display:flex;justify-content:space-between;align-items:baseline;border-top:3px double var(--leather);padding-top:8px;margin:6px 0 12px;font-family:var(--slab);font-weight:700;font-size:1.1rem}
.sl-total strong{color:var(--rust);font-size:1.35rem;text-decoration:underline double;text-underline-offset:4px}
.sl-foot .note{margin:0 0 .5em}
@media (max-width:760px){
  .shoplist{padding:16px 12px 10px}
  .sl-table th:nth-child(5),.sl-table td.sl-shop{display:none}
  .sl-table{font-size:.9rem}
}

/* Print my list: only the shopping list goes to paper */
@media print{
  html.print-list body{background:#fff}
  html.print-list .skip,html.print-list .site-head,html.print-list .site-foot,
  html.print-list main > :not(#planner),html.print-list #planner .wrap > :not(#kit-planner),
  html.print-list #kit-planner > :not(#shopping-list){display:none !important}
  html.print-list #planner{display:block !important;padding:0;background:none}
  html.print-list #planner .wrap{max-width:none;padding:0}
  html.print-list #kit-planner{border:0;padding:0;background:none;box-shadow:none}
  html.print-list #shopping-list{margin:0;box-shadow:none;border:0;padding:0;background:#fff}
  html.print-list .sl-actions,html.print-list .sl-carts{display:none}
  html.print-list .sl-table td.sl-shop a{color:#000;text-decoration:none}
  html.print-list .sl-chk input{appearance:none;-webkit-appearance:none;width:14px;height:14px;border:1.5px solid #000;border-radius:2px}
  html.print-list .sl-chk input:checked{background:#000}
  html.print-list .sl-table tr{break-inside:avoid}
  html.print-list .sl-group h4{break-after:avoid}
  html.print-list .site-head,html.print-list .site-foot{display:none}
  .sl-table tr:has(input:checked) .sl-item{text-decoration:line-through}
}
@media print{
  html.print-list .sl-table th:nth-child(5),html.print-list .sl-table td.sl-shop{display:table-cell !important}
  html.print-list .sl-table{font-size:10.5pt}
}
@media (max-width:760px){.storesign .tagline{letter-spacing:.06em;font-size:.66rem}}

/* ---------------------------------------------------------------- Trail Report + Trail Conditions */
.tc-badge{display:inline-flex;align-items:center;gap:.5em;border-radius:999px;padding:.25em .9em .25em .3em;font-family:var(--slab);font-weight:700;line-height:1.2;border:2px solid rgba(0,0,0,.25);vertical-align:middle}
.tc-badge .tc-num{display:inline-grid;place-items:center;width:1.8em;height:1.8em;border-radius:50%;background:rgba(255,255,255,.9);color:var(--char)}
.tc-badge .tc-plain{font-family:var(--body);font-weight:600;font-size:.82em;opacity:.95;text-transform:uppercase;letter-spacing:.06em}
.tc-badge.lg{font-size:1.25rem;padding:.35em 1.1em .35em .35em}
.tc-1{--tc:#3f6e46;--tc-ink:#fff}
.tc-2{--tc:#d8b23a;--tc-ink:#2E2A27}
.tc-3{--tc:#d77a28;--tc-ink:#2E2A27}
.tc-4{--tc:#b3332a;--tc-ink:#fff}
.tc-5{--tc:#5b1a2a;--tc-ink:#fff}
.tc-badge.tc-1,.tc-badge.tc-2,.tc-badge.tc-3,.tc-badge.tc-4,.tc-badge.tc-5{background:var(--tc);color:var(--tc-ink)}
.tc-label{font-family:var(--slab);font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:var(--rust);margin:0 0 .4em}
.tc-scale{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:0;margin:14px 0}
.tc-step a{display:block;height:100%;padding:8px 10px;border-radius:6px;background:var(--card);border:1.5px solid var(--line);border-top:8px solid var(--tc);color:var(--char);text-decoration:none;font-family:var(--slab);font-weight:600;font-size:.95rem}
.tc-step a b{color:var(--tc);font-size:1.2rem;margin-right:.2em;filter:brightness(.8)}
.tc-step a small{display:block;font-family:var(--body);font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.tc-step.on a{border-color:var(--tc);box-shadow:0 0 0 3px var(--tc) inset;background:#fff}
.tc-step a:hover,.tc-step a:focus-visible{background:#fff}
.trail{padding:28px 0 40px}
.trail .lede,.post .lede{font-size:1.15rem;color:var(--muted);max-width:60em}
.tr-cond,.tc-now{background:var(--card);border:1.5px solid var(--leather);border-radius:8px;padding:14px 18px;margin:16px 0}
.tr-cond h2{margin-top:0}
.tr-cond .tc-now{border:0;padding:0;margin:0 0 6px;background:none}
.tr-list{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.tr-card{background:var(--card) var(--paper-tex);border:1.5px solid var(--leather);border-left:8px solid var(--rust);border-radius:6px;padding:14px 18px;display:flex;gap:16px;align-items:flex-start;justify-content:space-between}
.tr-card>a{color:var(--char);text-decoration:none;flex:1}
.tr-card h3{margin:.15em 0 .3em;color:var(--leather)}
.tr-card>a:hover h3,.tr-card>a:focus-visible h3{text-decoration:underline}
.tr-card p{margin:0}
.tr-card.is-draft{border-left-color:var(--tan);border-style:dashed}
.tr-date{font-family:var(--slab);font-weight:600;color:var(--rust);font-size:.9rem;letter-spacing:.06em;text-transform:uppercase}
.empty{background:var(--card);border:1.5px dashed var(--tan);padding:14px 18px;border-radius:6px}
.official{background:var(--sand);border-left:6px solid var(--leather);padding:12px 16px;margin:20px 0;border-radius:4px;font-size:.95rem}
.official p{margin:.3em 0}
.post{padding:28px 0 44px;max-width:900px}
.post h1{margin:.1em 0 .25em}
.post-meta{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;margin:16px 0}
.post-meta .tc-now{margin:0}
.post-meta ul.regions{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}
.post-meta ul.regions li{background:var(--card);border:1px solid var(--line);border-radius:999px;padding:2px 10px;font-size:.88rem}
.tr-item{background:var(--card);border:1.5px solid var(--line);border-left:6px solid var(--leather);border-radius:6px;padding:12px 18px;margin:14px 0}
.tr-item h3{margin:.1em 0 .3em;color:var(--leather)}
.tr-item p{margin:.4em 0}
.tr-region span,.tr-source span{font-family:var(--slab);font-weight:700;color:var(--rust)}
.tr-region{font-size:.92rem;color:var(--muted)}
.tr-source{font-size:.92rem}
.tr-takeaway{background:var(--sand);border-radius:4px;padding:8px 12px}
.tc-howto{background:var(--card);border:2px solid var(--leather);border-radius:8px;padding:6px 20px 16px;margin:24px 0}
.tc-howto h4,.tc-level h4{font-family:var(--slab);color:var(--leather);margin:.9em 0 .3em;font-size:1.05rem}
.tc-ranks{padding-left:1.2em}
.tc-ranks li{margin:.25em 0}
.tc-ranks a{font-family:var(--slab);font-weight:700}
.post-sources ul{font-size:.92rem}
.tc-level{background:var(--card);border:1.5px solid var(--line);border-top:10px solid var(--tc);border-radius:8px;padding:10px 20px 16px;margin:20px 0;scroll-margin-top:90px}
.tc-level h2{margin:.3em 0}
.tc-method{margin:18px 0}
.draft-banner{background:repeating-linear-gradient(45deg,#fff3c4 0 14px,#fbe7a1 14px 28px);border:2px dashed var(--rust);padding:10px 14px;border-radius:6px;font-family:var(--slab)}
.teaser{padding:34px 0;background:var(--sand) var(--paper-tex)}
.teaser-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:18px}
.teaser-post,.teaser-cond{background:var(--card);border:1.5px solid var(--leather);border-radius:8px;padding:14px 18px}
.teaser-post h3{margin:.2em 0 .4em}
.teaser-post h3 a{color:var(--leather)}
.teaser-cond .tc-badge{margin:4px 0 8px}
@media (max-width:760px){
  .tc-scale{grid-template-columns:1fr}
  .teaser-grid,.post-meta{grid-template-columns:1fr}
  .tr-card{flex-direction:column}
  .tc-badge.lg{font-size:1.05rem}
}
@media print{.teaser,.tc-scale{display:none}}
.teaser-grid + .small,.tr-list + .small{margin-top:14px}
