/* ---------------------------------------------------------------
   Lush - buying guide / category / review / how-to / roundup
   --------------------------------------------------------------- */

.guide .wrap--post{max-width:1338px}

.pill{
	display:inline-block;padding:5px 12px;border-radius:6px;
	font-size:9.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#fff;
}
.pill--green{background:var(--green-700)}
.pill--orange{background:var(--orange)}

.btn--sm{padding:6px 13px;font-size:10.5px;border-radius:6px;gap:5px}
.btn--ghost{background:#fff;border:1px solid var(--line);color:#4d4b40}
.btn--ghost:hover{filter:none;border-color:#d9cfb8}

.stars{display:inline-flex;gap:1px}
.star .ic{width:11px;height:11px;color:#ddd5c3}
.star.is-on .ic{color:#e8a020}
.rating{display:flex;align-items:center;gap:5px;margin-top:7px;font-size:10.5px}
.rating span{font-weight:700;color:#3a382e}
.rating em{font-style:normal;color:#8a8474}

/* ---- guide hero -------------------------------------------------- */
.g-hero{position:relative;background:var(--cream);overflow:hidden}
.g-hero__shot{position:absolute;top:0;right:0;bottom:0;width:54%}
.g-hero__shot .l-media{height:100%}
.g-hero__in{position:relative;z-index:2;padding:18px 24px 20px;max-width:1338px}
.g-title{font-size:50px;line-height:1.04;letter-spacing:-.02em;margin:10px 0 0}
.g-sub{margin-top:8px;font-family:var(--serif-2);font-weight:700;font-size:20px;color:var(--green-900)}
.g-dek{margin-top:11px;max-width:430px;font-size:12.5px;line-height:1.65;color:#4d4b40}

.g-trust{display:flex;align-items:center;gap:18px;margin-top:20px}
.g-trust li{display:flex;align-items:center;gap:8px}
.g-trust li + li{border-left:1px solid #ddd4c0;padding-left:18px}
.g-trust .ic{width:17px;height:17px;color:#3f6b44}
.g-trust span{display:flex;flex-direction:column;font-size:10px;color:#6f6a5b;line-height:1.35}
.g-trust b{font-size:10.5px;font-weight:700;color:#23231f}

/* ---- jump bar ---------------------------------------------------- */
.g-jump{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.g-jump__in{display:flex;align-items:center;gap:20px;height:46px;max-width:1338px}
.g-jump b{font-size:11.5px;color:var(--ink)}
.g-jump a{font-size:11.5px;color:#5e5b4e;white-space:nowrap}
.g-jump a:hover{color:var(--orange-ink)}
.g-jump a.g-jump__cta{margin-left:auto;color:#fff;padding:7px 14px;font-size:11.5px}
.g-jump__cta .ic{width:12px;height:12px}

/* ---- rows in the guide ------------------------------------------- */
.guide .band{padding:20px 0}
.guide .row-head{width:248px}
.guide .row-head h2{font-size:22px}

/* ---- top picks --------------------------------------------------- */
.card--pick .card-shot{display:block;position:relative}
.card--pick .l-media{height:104px}
.pick-name{display:block;font-family:var(--serif-2);font-weight:700;font-size:13px;line-height:1.3;color:var(--ink)}
.card--pick .card-tag{font-size:10.5px;margin-top:4px}
.card--pick .card-cta{margin-top:7px}

/* ---- comparison table -------------------------------------------- */
.row--table{align-items:flex-start}
.row--table .row-head{padding-top:6px}
.table-scroll{flex:1;min-width:0;overflow-x:auto}
.g-table{
	width:100%;border-collapse:separate;border-spacing:0;
	background:#fff;border:1px solid #ece4d4;border-radius:9px;overflow:hidden;
	font-size:10.5px;
}
.g-table th{
	background:#f6f1e6;text-align:left;padding:8px 10px;
	font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#6b6558;
	white-space:nowrap;
}
.g-table td{padding:7px 10px;color:#4d4b40;border-top:1px solid #f0eade;white-space:nowrap}
.g-table td.is-model{font-weight:700;color:var(--ink)}
.g-table tbody tr:hover td{background:#fdfbf5}

/* ---- how we chose / who it's for --------------------------------- */
.g-split{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.g-panel{
	display:grid;grid-template-columns:152px minmax(0,1fr);gap:14px;align-items:center;
	background:#fff;border:1px solid #ece4d4;border-radius:12px;overflow:hidden;
}
.g-panel--rev{grid-template-columns:minmax(0,1fr) 152px}
.g-panel__shot .l-media{height:100%;min-height:148px}
.g-panel__body{padding:15px 16px 15px 0}
.g-panel--rev .g-panel__body{padding:15px 0 15px 16px}
.g-panel h2{font-size:19px}
.g-panel__lede{margin-top:7px;font-size:11px;line-height:1.55;color:#5e5b4e}

.crit{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;margin-top:11px}
.crit li{display:flex;gap:9px;align-items:flex-start}
.crit-ic{
	width:24px;height:24px;border-radius:999px;flex:none;
	display:grid;place-items:center;border:1.5px solid #cfa85c;color:#8a5a2b;
}
.crit-ic .ic{width:12px;height:12px}
.crit span span,.crit li > span:last-child{display:flex;flex-direction:column;font-size:9.5px;color:#7d7765;line-height:1.35}
.crit b{font-size:11px;color:var(--ink)}

.aud{display:flex;margin-top:12px}
.aud li{display:flex;gap:8px;padding-right:13px}
.aud li + li{border-left:1px solid var(--line);padding-left:13px}
.aud-ic .ic{width:18px;height:18px}
.aud-ic--brown{color:#8a5a2b}
.aud-ic--red{color:var(--orange)}
.aud li > span:last-child{display:flex;flex-direction:column;font-size:9.5px;color:#7d7765;line-height:1.35}
.aud b{font-size:10.5px;color:var(--ink)}

/* ---- detailed picks ---------------------------------------------- */
.g-sechead{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.g-sechead h2{font-size:22px}
.g-sechead p{margin-top:5px;font-size:12px;color:var(--muted)}

.dpick{
	display:grid;grid-template-columns:216px minmax(0,1fr) 248px minmax(0,1.35fr);
	gap:14px;align-items:start;margin-top:14px;
	background:#fff;border:1px solid #ece4d4;border-radius:12px;padding:14px;
}
.dpick__shot{position:relative}
.dpick__shot .l-media{height:162px;border-radius:9px}
.dpick h3{font-family:var(--serif-2);font-weight:700;font-size:16px;color:var(--green-900)}
.dpick__tag{margin-top:4px;font-size:11.5px;color:#7d7765}
.dpick__body{margin-top:9px;font-size:11px;line-height:1.6;color:#4d4b40}
.dpick__acts{display:flex;align-items:center;gap:9px;margin-top:12px}
.dpick__acts .btn{font-size:12px;padding:9px 15px}
.dpick h4{font-family:var(--serif-2);font-weight:700;font-size:13px;color:var(--green-900)}

.spec-table{width:100%;margin-top:8px;border-collapse:collapse;font-size:10.5px;border:1px solid #ece4d4;border-radius:8px;overflow:hidden}
.spec-table th{width:54%;text-align:left;background:#faf6ee;color:#5e5b4e;font-weight:600;padding:6px 9px}
.spec-table td{padding:6px 9px;color:var(--ink);border-left:1px solid #ece4d4}
.spec-table tr + tr th,.spec-table tr + tr td{border-top:1px solid #ece4d4}

.dpick__pc{display:grid;grid-template-columns:minmax(0,200px) minmax(0,1fr);gap:14px}
.pc ul{margin-top:8px;display:grid;gap:6px}
.pc li{display:flex;gap:7px;font-size:11px;line-height:1.4;color:#4d4b40}
.pc .ic{width:13px;height:13px;flex:none;margin-top:1px}
.pc--pro .ic{color:#4c8c3f}
.pc--con .ic{color:#d8422a}

.bottomline{margin-top:13px;background:#f1f6ef;border:1px solid #dbe8d6;border-radius:9px;padding:11px 12px}
.bottomline h5{display:flex;align-items:center;gap:6px;margin:0;font-family:var(--serif-2);font-weight:700;font-size:12px;color:var(--green-900)}
.bottomline h5 .ic{width:14px;height:14px;color:#4c8c3f}
.bottomline p{margin-top:5px;font-size:10.5px;line-height:1.5;color:#4d4b40}

/* ---- how to choose ----------------------------------------------- */
.g-choose{display:grid;grid-template-columns:minmax(0,1fr) 404px;gap:20px;align-items:start}
.g-choose h2{font-size:22px}
.g-choose__lede{margin-top:5px;font-size:12px;color:var(--muted)}
.choose-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:13px}
.choose-tile{background:#fff;border:1px solid #ece4d4;border-radius:10px;padding:13px 8px;text-align:center}
.choose-tile .ic{width:20px;height:20px;color:#8a5a2b}
.choose-tile b{display:block;margin-top:8px;font-size:11px;color:var(--green-900)}
.choose-tile span{display:block;margin-top:4px;font-size:9.5px;line-height:1.35;color:#7d7765}
.g-choose__shot .l-media{height:196px;border-radius:12px}

/* ---- faqs -------------------------------------------------------- */
.row--faq{align-items:flex-start}
.row--faq .row-head{padding-top:6px}
.faqs{flex:1;min-width:0}
.faq{background:#fff;border:1px solid #ece4d4;border-radius:10px;padding:12px 14px}
.faq + .faq{margin-top:9px}
.faq summary{
	display:flex;justify-content:space-between;align-items:center;gap:12px;
	cursor:pointer;list-style:none;
	font-family:var(--serif-2);font-weight:700;font-size:13px;color:var(--green-900);
}
.faq summary::-webkit-details-marker{display:none}
.faq summary .ic{width:13px;height:13px;flex:none;color:#8a8474;transition:transform .15s ease}
.faq[open] summary .ic{transform:rotate(180deg)}
.faq p{margin-top:9px;font-size:11.5px;line-height:1.62;color:#4d4b40}

.disclosure{margin-top:18px;max-width:900px;font-size:10px;line-height:1.6;color:#8a8474}

/* ---- responsive -------------------------------------------------- */
@media (max-width:1240px){
	.dpick{grid-template-columns:200px minmax(0,1fr);row-gap:16px}
	.dpick__specs,.dpick__pc{grid-column:1 / -1}
	.choose-grid{grid-template-columns:repeat(3,1fr)}
	.g-choose{grid-template-columns:minmax(0,1fr) 300px}
}
@media (max-width:1100px){
	.g-hero__shot{position:relative;width:100%;height:210px}
	.g-hero__in{padding-top:16px}
	.g-title{font-size:38px}
	.g-jump__in{overflow-x:auto;gap:16px}
	.g-split{grid-template-columns:minmax(0,1fr)}
	.g-choose{grid-template-columns:minmax(0,1fr)}
	.g-choose__shot .l-media{height:230px}
	.guide .row{flex-direction:column;align-items:stretch}
	.guide .row-head{width:auto}
}
@media (max-width:720px){
	.g-title{font-size:30px}
	.g-trust{flex-direction:column;align-items:flex-start;gap:11px}
	.g-trust li + li{border-left:0;padding-left:0}
	.g-panel,.g-panel--rev{grid-template-columns:minmax(0,1fr)}
	.g-panel__body,.g-panel--rev .g-panel__body{padding:15px}
	.crit{grid-template-columns:minmax(0,1fr)}
	.aud{flex-direction:column;gap:10px}
	.aud li + li{border-left:0;padding-left:0}
	.dpick{grid-template-columns:minmax(0,1fr)}
	.dpick__pc{grid-template-columns:minmax(0,1fr)}
	.choose-grid{grid-template-columns:repeat(2,1fr)}
}

/* ===============================================================
   Category landing
   =============================================================== */
.cat-hero .g-hero__in{padding-bottom:26px}
.cat-hero .g-title{font-size:44px}
.cat-script{margin-top:14px;font-family:var(--script);font-size:21px;line-height:1.2;color:var(--orange)}

.chips{display:flex;gap:26px}
.chip{display:flex;flex-direction:column;align-items:center;gap:7px;width:76px;text-align:center}
.chip-ic{
	width:46px;height:46px;border-radius:999px;display:grid;place-items:center;
	background:#f1ece0;border:1px solid #e6dfce;color:#5e5b4e;
}
.chip-ic .ic{width:19px;height:19px}
.chip.is-on .chip-ic{background:#cfe6e3;border-color:#b7d9d4;color:#25605a}
.chip-label{font-size:9.5px;font-weight:600;line-height:1.25;color:#4d4b40}

.feat-grid{max-width:620px}
.card--feat .card-shot{display:block;position:relative}
.card--feat .l-media{height:118px}
.card--feat .card-body{text-align:left}
.card--feat .btn{margin-top:9px}
.card--art .l-media{height:96px}
.card--art .card-title{font-size:12px}

.promo{
	display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:center;
	background:var(--green-900);border-radius:14px;overflow:hidden;padding:22px 0 22px 26px;color:#fff;
}
.promo h2{font-size:31px;line-height:1.12;color:#fff}
.promo p{margin-top:9px;font-size:12.5px;color:rgba(255,255,255,.82)}
.promo .btn{margin-top:14px}
.promo__shot .l-media{height:150px}

.cat-trust{display:flex;gap:30px;margin-top:16px}
.cat-trust li{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:600;color:#4d4b40}
.cat-trust .ic{width:14px;height:14px;color:#4c8c3f}

.signup{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.signup h2{font-size:21px}
.signup p{margin-top:5px;font-size:12px;color:var(--muted)}
.signup__form{display:flex;gap:9px;flex:1;min-width:280px;max-width:430px}
.signup__form input{
	flex:1;min-width:0;height:40px;padding:0 14px;outline:none;
	border:1px solid var(--line);border-radius:8px;background:#fff;
	font-family:var(--sans);font-size:12.5px;color:var(--ink);
}
.signup__form input::placeholder{color:#a8a291}

/* ===============================================================
   Product review
   =============================================================== */
.rv{padding-bottom:30px}
.rv-title{font-family:var(--serif);font-weight:800;font-size:38px;line-height:1.1;color:var(--green-900);margin-top:6px}
.rv-sub{margin-top:8px;font-family:var(--serif-2);font-weight:700;font-size:16px;color:#4d4b40}
.rv-byline{margin-top:14px}

.rv-shot{position:relative;margin-top:16px;border-radius:12px;overflow:hidden}
.rv-shot .l-media{height:300px;background:#fff}
.seal{
	position:absolute;right:20px;top:20px;z-index:2;
	width:96px;height:96px;border-radius:999px;
	display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;
	background:var(--green-700);color:#fff;text-align:center;
	border:2px solid rgba(255,255,255,.55);
}
.seal b{font-family:var(--serif-2);font-weight:700;font-size:12px;line-height:1.15}
.seal i{font-style:normal;margin-top:4px;font-size:6.5px;letter-spacing:.08em;text-transform:uppercase;opacity:.85}

.rv-thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin-top:10px}
.rv-thumb{height:62px;border-radius:7px;background:#fff;border:1px solid #ece4d4}

.rv-verdict{
	display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:18px;align-items:center;
	margin-top:16px;padding:16px 18px;
	background:#f1f4f6;border:1px solid #e0e6ea;border-radius:11px;
}
.rv-verdict h2{font-size:20px}
.rv-verdict p{margin-top:7px;font-size:11.5px;line-height:1.6;color:#4d4b40}
.rv-score{
	display:flex;flex-direction:column;align-items:center;gap:4px;
	background:#fff;border:1px solid #e0e6ea;border-radius:10px;padding:12px 10px;
}
.rv-score b{font-family:var(--serif);font-weight:800;font-size:31px;color:var(--green-900);line-height:1}
.rv-score span{font-size:9.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--orange-ink)}

.rv-pc{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.pcbox{border-radius:11px;padding:14px 16px}
.pcbox h3{font-family:var(--serif-2);font-weight:700;font-size:14px}
.pcbox ul{margin-top:9px;display:grid;gap:7px}
.pcbox li{display:flex;gap:8px;font-size:11.5px;line-height:1.4;color:#4d4b40}
.pcbox .ic{width:13px;height:13px;flex:none;margin-top:1px}
.pcbox--pro{background:#f1f7f0;border:1px solid #dbe8d6}
.pcbox--pro h3{color:#2c6b3c}
.pcbox--pro .ic{color:#4c8c3f}
.pcbox--con{background:#fdf2f0;border:1px solid #f1dcd7}
.pcbox--con h3{color:#a63428}
.pcbox--con .ic{color:#d8422a}

.rv-specs{margin-top:20px}
.rv-specs h2{font-size:20px}
.rv-specs .spec-table{margin-top:10px}
.rv-buy{display:flex;align-items:center;gap:14px;margin-top:14px;flex-wrap:wrap}
.rv-buy span{font-size:10px;line-height:1.5;color:#8a8474;max-width:280px}

.rv-toc{margin-top:22px;background:#fff;border:1px solid #ece4d4;border-radius:11px;padding:16px 18px}
.rv-toc h2{font-size:19px}
.rv-toc ol{columns:3;column-gap:20px;margin-top:11px}
.rv-toc li{display:flex;align-items:center;gap:9px;margin-bottom:10px;break-inside:avoid;font-size:11.5px;color:#3a382e}

/* ===============================================================
   How-to guide + recipe roundup
   =============================================================== */
.guide .hw,.guide .ru{max-width:1100px;margin:0 auto;padding-bottom:32px}
.hw-title,.ru .hw-title{font-family:var(--serif);font-weight:800;font-size:36px;line-height:1.12;color:var(--green-900);margin-top:9px}
.hw-sub{margin-top:9px;font-size:13px;line-height:1.6;color:#4d4b40;max-width:640px}
.hw .byline,.ru .byline{margin-top:13px}

.hw-shot,.ru-shot{position:relative;margin-top:16px;border-radius:12px;overflow:hidden}
.hw-shot .l-media,.ru-shot .l-media{height:290px}
.hw-script{
	position:absolute;right:20px;top:18px;z-index:2;
	font-family:var(--script);font-size:20px;line-height:1.25;color:#3d3a2e;text-align:right;
}
.ru-stamp{
	position:absolute;right:22px;top:20px;z-index:2;
	width:92px;height:92px;border-radius:999px;background:#f6d98f;
	display:grid;place-items:center;text-align:center;
	font-family:var(--script);font-size:15px;line-height:1.2;color:#8a5a2b;
}
.ru-share{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:11px;color:#7d7765}

.quicknav{margin-top:18px;background:#f1f4f6;border:1px solid #e0e6ea;border-radius:11px;padding:16px 18px}
.quicknav h2{font-size:19px}
.quicknav ol{columns:2;column-gap:26px;margin-top:11px}

.quicknav li{display:flex;align-items:center;gap:9px;margin-bottom:10px;break-inside:avoid;font-size:11.5px;color:#3a382e}
.qn-num{
	width:20px;height:20px;border-radius:999px;flex:none;
	display:grid;place-items:center;
	background:#2f7d8a;color:#fff;font-size:9.5px;font-weight:700;
}
.qn-num--orange{background:var(--orange)}

.hw-h2{margin-top:22px;font-size:23px}
.hw-p{margin-top:9px;font-size:13px;line-height:1.72;color:#403e35}

.hw-quote{
	display:flex;gap:11px;margin-top:15px;padding:14px 17px;
	background:#eef6ee;border:1px solid #dbe8d6;border-radius:11px;
}
.hw-quote .ic{width:17px;height:17px;flex:none;color:#4c8c3f}
.hw-quote p{font-family:var(--serif-2);font-style:italic;font-size:12.5px;line-height:1.6;color:#3a382e}

.supplies{display:grid;grid-template-columns:repeat(5,1fr);gap:11px;margin-top:13px}
.supply{background:#fff;border:1px solid #ece4d4;border-radius:10px;padding:14px 8px;text-align:center}
.supply .ic{width:21px;height:21px;color:#2f7d8a}
.supply span{display:block;margin-top:8px;font-size:10px;line-height:1.3;color:#4d4b40}

.hw-step{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:center;margin-top:16px}
.hw-step h3{display:flex;align-items:center;gap:9px;font-family:var(--serif-2);font-weight:700;font-size:15.5px;color:var(--green-900)}
.hw-step p{margin-top:7px;font-size:12px;line-height:1.65;color:#4d4b40}
.hw-step__shot .l-media{height:150px;border-radius:10px}

.ru-item{margin-top:24px}
.ru-item h2{display:flex;align-items:center;gap:10px;font-size:22px}
.ru-item__shot{height:250px;border-radius:12px;margin-top:12px}
.ru-meta{display:flex;gap:30px;margin-top:12px}
.ru-meta li{display:flex;align-items:center;gap:8px}
.ru-meta .ic{width:16px;height:16px;color:#8a8474}
.ru-meta span{display:flex;flex-direction:column;font-size:10.5px;color:#4d4b40}
.ru-meta b{font-size:9.5px;font-weight:600;color:#8a8474}
.ru-item p{margin-top:11px;font-size:12.5px;line-height:1.7;color:#403e35}
.ru-acts{display:flex;align-items:center;gap:16px;margin-top:12px}

/* ---- responsive -------------------------------------------------- */
@media (max-width:1100px){
	.chips{overflow-x:auto;gap:18px}
	.promo{grid-template-columns:minmax(0,1fr);padding:22px}
	.promo__shot .l-media{height:170px;border-radius:10px}
	.rv-verdict{grid-template-columns:minmax(0,1fr)}
	.rv-toc ol{columns:2}
	.hw-step{grid-template-columns:minmax(0,1fr)}
	.supplies{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:720px){
	.cat-hero .g-title,.rv-title,.hw-title{font-size:27px}
	.feat-grid,.grid--3.feat-grid{grid-template-columns:minmax(0,1fr)}
	.rv-thumbs{grid-template-columns:repeat(3,1fr)}
	.rv-pc{grid-template-columns:minmax(0,1fr)}
	.rv-toc ol,.quicknav ol{columns:1}
	.supplies{grid-template-columns:repeat(2,1fr)}
	.ru-meta{gap:16px}
	.cat-trust{flex-wrap:wrap;gap:14px}
}

/* ---- real product data -------------------------------------------- */
.l-media--prod{display:block;background:#fff}
.l-media--prod img{width:100%;height:100%;object-fit:contain;padding:8px}
.specchips{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
.specchips span{
	padding:3px 8px;border-radius:999px;background:#f5f0e5;border:1px solid #e9e2d1;
	font-size:9.5px;font-weight:600;color:#5e5b4e;white-space:nowrap;
}
.sourced{margin-top:6px;font-size:9px;color:#a09a88}
.spec-table .na{color:#a09a88;font-style:italic}
.pc li span{min-width:0}
.rv-quick{
	display:flex;flex-direction:column;gap:3px;text-align:center;
	background:#fff;border:1px solid #e0e6ea;border-radius:10px;padding:13px 10px;
}
.rv-quick span{font-size:8.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--orange-ink)}
.rv-quick b{font-family:var(--serif-2);font-weight:700;font-size:15px;color:var(--green-900);line-height:1.2}
.rv-quick i{font-style:normal;font-size:9.5px;color:#7d7765;line-height:1.35}
.pcbox li span{min-width:0}
.rv-shot .l-media{background:#fff}

/* ---- answer-first block + research sources ------------------------ */
.answer{padding-top:4px;padding-bottom:4px;max-width:1338px}
.answer p{font-size:14px;line-height:1.7;color:#35342c;max-width:960px}
.answer b{color:var(--green-900)}
.answer__note{margin-top:9px;font-size:11px;line-height:1.6;color:#8a8474}
.sources{margin-top:24px;padding:18px 20px;background:#fff;border:1px solid #ece4d4;border-radius:12px}
.sources h2{font-size:19px}
.sources > p{margin-top:8px;font-size:11.5px;line-height:1.6;color:#5e5b4e;max-width:780px}
.sources ul{margin-top:12px;display:grid;gap:9px}
.sources li{display:flex;flex-direction:column;gap:2px}
.sources a{font-size:11.5px;color:var(--orange-ink);line-height:1.4}
.sources a:hover{text-decoration:underline}
.sources span{font-size:9.5px;color:#a09a88}

/* ---- section hubs + standard pages -------------------------------- */
.hub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.hub-card{
	display:block;background:#fff;border:1px solid #ece4d4;border-radius:12px;overflow:hidden;
	transition:box-shadow .15s ease,transform .15s ease;
}
.hub-card:hover{box-shadow:0 6px 16px rgba(40,32,12,.1);transform:translateY(-2px)}
.hub-card .l-media{height:132px}
.hub-card__body{display:block;padding:13px 15px 15px}
.hub-card__kick{display:block;font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--orange-ink)}
.hub-card__title{display:block;margin-top:5px;font-family:var(--serif-2);font-weight:700;font-size:15px;line-height:1.3;color:var(--green-900)}
.hub-card__tag{display:block;margin-top:6px;font-size:11.5px;line-height:1.5;color:#7d7765}
.hub-empty{font-size:13px;color:var(--muted)}
.hub-note{margin-top:22px;max-width:820px;font-size:13px;line-height:1.75;color:#403e35}
.hub-note p + p{margin-top:12px}

.guide .std{max-width:820px;margin:0 auto;padding-bottom:40px}
.std-body{margin-top:18px;font-size:13.5px;line-height:1.8;color:#3a382e}
.std-body p{margin-bottom:14px}
.std-body h2{margin:26px 0 10px;font-size:21px}
.std-body h3{margin:20px 0 8px;font-family:var(--serif-2);font-weight:700;font-size:15px;color:var(--green-900)}
.std-body ul{margin:0 0 14px;padding-left:18px;list-style:disc}
.std-body li{margin-bottom:7px}
.std-body a{color:var(--orange-ink);text-decoration:underline}
@media (max-width:1100px){.hub-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:720px){.hub-grid{grid-template-columns:1fr}}
.std-body .lead-answer{font-size:14.5px;line-height:1.75;color:#35342c;padding:14px 16px;background:#f2ece0;border-radius:11px;margin-bottom:20px}
.std-body .lead-answer strong{color:var(--green-900)}
.std-body .table-scroll{margin:14px 0 16px}
.std-body .g-table{font-size:11.5px}
.std-body strong{color:var(--green-900)}
.rv-body{margin-top:24px;max-width:860px}

/* ---- analysis + sizing -------------------------------------------- */
.analysis{max-width:1338px}
.an-block{margin-top:20px;max-width:880px}
.an-block h3{font-family:var(--serif-2);font-weight:700;font-size:16px;color:var(--green-900)}
.an-block p{margin-top:8px;font-size:13px;line-height:1.75;color:#403e35}
.g-table.sizing td{white-space:normal}
.g-table.sizing td.is-note{min-width:340px;line-height:1.55;color:#5e5b4e}
.gaps{max-width:1338px}
.gaps ul{margin-top:14px;display:grid;gap:10px;max-width:900px}
.gaps li{display:flex;gap:10px;font-size:12.5px;line-height:1.65;color:#403e35}
.gaps .ic{width:14px;height:14px;flex:none;margin-top:3px;color:#b4926a}
.crit + .link-arrow{margin-top:12px}
.card-rev{display:block;margin-top:5px;font-size:10.5px;font-weight:600;color:#6b6558;text-decoration:underline}
.card-rev:hover{color:var(--orange-ink)}
.dpick__acts .btn--ghost{font-size:11px;padding:9px 12px}
.hw-body{margin-top:26px;max-width:860px}
.quicknav li a{display:flex;align-items:center;gap:9px;color:inherit}
.quicknav li a:hover{color:var(--orange-ink)}
.ru-body{margin-top:28px;max-width:880px}
/* Best-of heroes use varied art; widen the fade so the headline always clears it. */
.bestof .g-hero__shot::after{
	background:linear-gradient(90deg,var(--cream) 0%,rgba(246,240,228,.96) 34%,rgba(246,240,228,0) 62%);
}
