/* OpenWeb-adapted Refero style: https://styles.refero.design/style/c38d077b-3cdb-48c6-899c-e8a543508c31 */
:root { --ink:#000000; --charcoal:#1f1f1f; --muted:#7b7f83; --quiet:#5f6468; --bg:#f1e9e7; --bone:#eee4e1; --khaki:#d8d0bb; --pale:#e8ded9; --line:#cfc6c2; --accent:#616245; --olive:#616245; --stone:#8c8a72; --water-green:rgba(159, 202, 184, 0.38); --water-green-strong:#8fbba8; --gold:#b79a56; --gold-soft:rgba(183, 154, 86, 0.28); --page-gradient:linear-gradient(135deg, var(--water-green), transparent 46%, var(--gold-soft)), var(--bg); --font-display:Copernicus, Georgia, 'Times New Roman', serif; --font-ui:Helvetica, Arial, sans-serif; }
* { box-sizing: border-box; }
body { margin:0; font-family:var(--font-ui); color:var(--ink); background:var(--page-gradient); line-height:1.55; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
a { color:inherit; text-decoration:none; } a:hover { color:var(--accent); }
.skip-link { position:absolute; left:-999px; top:auto; } .skip-link:focus { left:1rem; top:1rem; background:var(--khaki); padding:.75rem; border:1px solid var(--ink); z-index:20; }
.site-header { max-width:1200px; margin:0 auto; padding:18px 22px; display:flex; justify-content:space-between; align-items:center; gap:22px; border-bottom:1px solid var(--ink); }
.brand { display:flex; align-items:center; gap:10px; color:var(--ink); }.brand-mark { width:40px; height:40px; border:1px solid var(--ink); display:grid; place-items:center; overflow:hidden; background:transparent; }.brand-logo { width:100%; height:100%; }.screenshot-logo { width:100%; height:100%; object-fit:cover; display:block; }.brand-text { display:flex; flex-direction:column; line-height:1; }.brand-text span { font-family:var(--font-display); font-size:18px; font-weight:400; letter-spacing:-.025em; }.brand-text small { margin-top:4px; font-size:8px; letter-spacing:.18em; text-transform:uppercase; color:var(--quiet); }
nav { display:flex; gap:20px; flex-wrap:wrap; } nav a { color:var(--quiet); font-size:10px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; } nav a.active { color:var(--ink); }
main { max-width:1200px; margin:0 auto; padding:0 22px 72px; }
.hero { padding:64px 0 38px; border-bottom:1px solid var(--ink); }.conversion-hero { min-height:72vh; display:grid; grid-template-columns:minmax(0, 1.38fr) minmax(320px, .62fr); gap:50px; align-items:end; }.hero-main { align-self:center; }.eyebrow { color:var(--accent); font-family:var(--font-ui); font-size:10px; letter-spacing:.22em; text-transform:uppercase; font-weight:700; margin:0 0 14px; }
h1 { font-family:var(--font-display); font-size:clamp(54px, 9.2vw, 118px); font-weight:400; line-height:.88; letter-spacing:-.075em; margin:0 0 22px; max-width:980px; } h2 { font-family:var(--font-display); font-size:clamp(30px,4.4vw,58px); font-weight:400; line-height:.96; letter-spacing:-.045em; margin:0 0 12px; } h3 { font-family:var(--font-display); font-size:24px; font-weight:400; letter-spacing:-.028em; line-height:1.08; margin:0 0 7px; }
p { margin-top:0; }.hero-copy, .page-title p { font-size:clamp(16px,1.55vw,19px); color:var(--charcoal); max-width:660px; line-height:1.55; }
.search-label { display:block; font-size:9px; font-weight:700; letter-spacing:.20em; text-transform:uppercase; margin:30px 0 8px; color:var(--quiet); }
.search-input { width:100%; max-width:640px; min-height:52px; border:1px solid var(--ink); padding:0 13px; font:700 14px/1 var(--font-ui); color:var(--ink); background:var(--bone); }
.search-input:focus { outline:2px solid var(--accent); outline-offset:2px; }.search-input.compact { max-width:520px; min-height:48px; margin-top:12px; }
.hero-actions { display:flex; flex-wrap:wrap; gap:8px; margin:18px 0 0; }.button { display:inline-flex; align-items:center; justify-content:center; min-height:40px; padding:0 15px; font-family:var(--font-ui); font-size:10px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; border:1px solid var(--ink); background:transparent; color:var(--ink); }.button.primary { background:var(--ink); color:var(--bg); border-color:var(--ink); }.button.secondary:hover, .button.primary:hover { background:var(--khaki); color:var(--ink); border-color:var(--ink); }.button.large { min-height:48px; padding:0 18px; }
.subscription-panel { border-top:1px solid var(--ink); border-bottom:1px solid var(--line); padding:24px clamp(20px,4vw,34px) 18px; background:var(--water-green); }.subscription-panel h2 { font-size:clamp(30px,3.5vw,48px); }.subscription-panel p { color:var(--charcoal); }.reader-promise { list-style:none; padding:0; margin:18px 0; border-top:1px solid var(--line); }.reader-promise li { padding:12px 0; border-bottom:1px solid var(--line); color:var(--charcoal); }.reader-promise strong { color:var(--ink); }
.trust-ledger { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-bottom:1px solid var(--line); }.trust-ledger div { padding:22px clamp(18px,2.4vw,30px) 18px; border-right:1px solid var(--line); text-align:center; }.trust-ledger div:last-child { border-right:0; }.trust-ledger span { display:block; font-family:var(--font-display); font-size:clamp(30px,4vw,54px); line-height:.9; font-weight:400; letter-spacing:-.05em; color:var(--ink); }.trust-ledger p { margin:8px 0 0; color:var(--quiet); font-size:9px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }
.notice { background:var(--pale); border:1px solid var(--line); padding:13px 14px; margin:24px 0; color:var(--charcoal); font-size:14px; max-width:960px; }
.section-head, .page-title { margin:60px 0 22px; max-width:900px; }.section-head p:not(.eyebrow), .page-title p { max-width:680px; }
.card-grid, .review-index { display:grid; grid-template-columns:1fr; gap:0; border-top:1px solid var(--line); }.card-grid.featured article:first-child { grid-column:auto; }
.product-card, .split-card, .method-summary, .method-grid article, .empty-state { background:transparent; border-bottom:1px solid var(--line); padding:22px 0; }.product-card { display:grid; grid-template-columns:54px 1fr; gap:20px; align-items:start; transition:.15s background-color; }.product-card:hover { background:var(--bone); }
.evidence-chip { width:40px; height:40px; border:1px solid var(--grade-color); display:grid; place-items:center; align-content:center; color:var(--grade-color); font-family:var(--font-ui); }.evidence-chip span { display:block; font-size:17px; font-weight:700; line-height:.9; }.evidence-chip small { display:none; }.verdict { font-weight:700; color:var(--ink); }.meta-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin:14px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.meta-grid div { padding:8px 10px 8px 0; }.meta-grid dt { color:var(--quiet); font-size:9px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }.meta-grid dd { margin:0; font-weight:700; font-size:12px; }.text-link { font-size:10px; letter-spacing:.16em; text-transform:uppercase; font-weight:700; color:var(--accent); }
.method-summary, .split-card { display:grid; grid-template-columns:1.2fr .8fr; gap:34px; align-items:start; margin-top:34px; border-top:1px solid var(--line); }.method-grid { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:0; border-top:1px solid var(--line); }.method-grid article { padding:22px 24px 22px 0; border-right:1px solid var(--line); }.method-grid article:nth-child(even) { padding-left:24px; border-right:0; }
.legal-copy { max-width:780px; border-top:1px solid var(--ink); padding-top:22px; }.legal-copy h2 { margin-top:28px; font-size:26px; letter-spacing:-.035em; }.legal-copy h2:first-child { margin-top:0; }.disclaimer-title h1 { color:var(--ink); }
.site-footer { border-top:1px solid var(--line); padding:24px 22px; color:var(--quiet); max-width:1200px; margin:0 auto; font-size:13px; }.small { color:var(--quiet); font-size:13px; margin-top:10px; }
@media (max-width: 920px) { .conversion-hero, .trust-ledger, .method-grid, .method-summary, .split-card { grid-template-columns:1fr; } .subscription-panel { margin-top:24px; } .trust-ledger div { border-right:0; border-bottom:1px solid var(--line); } .trust-ledger div:last-child { border-bottom:0; } }
@media (max-width: 820px) { .site-header { padding:16px; align-items:flex-start; flex-direction:column; } main { padding:0 16px 48px; } .hero { min-height:auto; padding:48px 0 34px; } nav { gap:12px; } h1 { letter-spacing:-.055em; } .product-card { grid-template-columns:42px 1fr; gap:14px; } .method-grid article, .method-grid article:nth-child(even) { padding:18px 0; border-right:0; } .meta-grid { grid-template-columns:1fr; } }