/* Theme: Daily Wire style. One bold sans, centred masthead, photo cards, one coral red. */
:root{--head:'Libre Franklin',Arial,sans-serif;--ink:#0A0909;--ink2:#2B2B2B;--muted:#5C5C5C;--line:#E5E5E5;--line2:#D6D6D6;--red:#EF3340}
body{font-family:'Libre Franklin',Arial,sans-serif;font-size:15px}
h1,h2,h3{font-family:var(--head);font-weight:700;letter-spacing:-.01em}
a:hover{color:var(--red)}

/* header */
.site-head.dw{border-bottom:1px solid var(--line2);background:#fff;position:sticky;top:0;z-index:20}
.dw .topbar{border-bottom:1px solid var(--line)}
.dw .topbar .wrap{height:44px;display:flex;align-items:center;gap:24px}
.dw .nav{gap:22px;font-size:13px;font-weight:500}
.dw .nav a{color:var(--ink2)}
.dw .nav a.on{color:var(--ink);font-weight:700}
.dw .head-end{margin-left:auto;display:flex;align-items:center;gap:18px}
.dw .howlink{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink)}
.redbtn{background:var(--red);color:#fff!important;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;border-radius:4px;padding:7px 12px;text-decoration:none}
.redbtn:hover{background:#D42A36}
.dw .masthead .wrap{height:74px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
.mh-date{font-size:13px;color:var(--ink2)}
.mh-tag{font-size:13px;color:var(--ink2);text-align:right}
.dw .logo{display:flex;align-items:center;gap:12px;font-family:var(--head);font-weight:800;font-size:24px;letter-spacing:.16em;text-decoration:none;color:var(--ink)}
.dw .logo .mark{display:flex;flex-direction:column;justify-content:center;gap:4px;width:30px;height:30px}
.dw .logo .mark i{display:block;height:6px;background:var(--red);border-radius:1.5px}
.dw .logo .mark i:nth-child(2){width:77%}.dw .logo .mark i:nth-child(3){width:50%}
@media (max-width:760px){.dw .logo .mark{width:24px;height:24px;gap:3px}.dw .logo .mark i{height:5px}}

/* shapes */
.btn,.search button{border-radius:4px}
.search{border-radius:4px}
.chips a{border-radius:4px}
.gallery>div,.row .pic,.row .pic .logoimg,.collage div,.tile,.guide,.vlogo,.vphoto,.claim,.hubcard .ph{border-radius:7px}
.tile span{border-radius:4px;font-family:var(--head);font-weight:700}
.rank{background:var(--red);color:#fff;box-shadow:none;border-radius:4px;font-family:var(--head);font-weight:700}
.intro h1{font-size:50px;line-height:1.06;letter-spacing:-.02em}
.sec h2.big{font-size:22px;letter-spacing:-.01em}
.picks .lab{color:var(--red);font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:.06em}
.picks .name,.row .price .amt,.guide .fig,.hubcard .t{font-family:var(--head);font-weight:700}
.crumbs,.crumbs a{color:var(--muted);font-weight:500}

/* homepage */
.dwhome{padding-top:28px}
.lead{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:28px}
.leadcard{position:relative;display:block;border-radius:7px;overflow:hidden;text-decoration:none;color:#fff;min-height:440px;background:#222}
.leadcard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.leadcard:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 35%,rgba(0,0,0,.78) 100%)}
.leadcard .tag{position:absolute;left:18px;top:18px;z-index:2}
.tag{display:inline-block;background:var(--red);color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-radius:3px;padding:5px 8px}
.leadcard .txt{position:absolute;left:24px;right:24px;bottom:22px;z-index:2}
.leadcard h1{font-size:36px;line-height:1.1;color:#fff;letter-spacing:-.015em}
.leadcard p{margin:10px 0 0;font-size:15px;color:#E6E6E6;max-width:560px}
.leadcard:hover{color:#fff}
.top h2{font-size:16px;font-weight:700;margin-bottom:6px}
.toplist{list-style:none;margin:0;padding:0}
.toplist li{border-bottom:1px solid var(--line)}
.toplist a{display:grid;grid-template-columns:76px 1fr;gap:14px;padding:13px 0;text-decoration:none;color:var(--ink)}
.toplist .th{width:76px;height:58px;border-radius:5px;overflow:hidden;background:var(--ph)}
.toplist .th img{width:100%;height:100%;object-fit:cover}
.toplist b{display:block;font-size:15px;line-height:1.3;font-weight:700}
.meta2{display:block;margin-top:5px;font-size:13px;color:var(--muted)}
.dwsearch{margin-top:28px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.dwsearch .search{margin:0;flex:1 1 420px;max-width:none}
.dwsearch .chips{margin:0}
.rowsec{padding-top:44px}
.rowhead{display:flex;align-items:baseline;justify-content:space-between}
.rowhead h2{font-size:18px;font-weight:700}
.rowhead h2 a{text-decoration:none}
.rowhead h2 a:after{content:' \203A';color:var(--muted)}
.rowhead .all{font-size:13px;color:var(--muted)}
.cards4{margin-top:14px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.card{display:block;text-decoration:none;color:var(--ink)}
.card .ph{position:relative;aspect-ratio:16/10;border-radius:7px;overflow:hidden;background:var(--ph)}
.card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.card:hover .ph img{transform:scale(1.03)}
.card .ph .tag{position:absolute;left:10px;top:10px}
.card b{display:block;margin-top:11px;font-size:16px;line-height:1.3;font-weight:700}
.card:hover b{color:var(--red)}
@media (max-width:900px){.lead{grid-template-columns:1fr}.cards4{grid-template-columns:repeat(2,minmax(0,1fr))}.leadcard{min-height:360px}}
@media (max-width:760px){
  .dw .topbar .wrap{overflow-x:auto;white-space:nowrap}
  .dw .howlink{display:none}
  .dw .masthead .wrap{grid-template-columns:1fr;justify-items:center;height:60px}
  .mh-date,.mh-tag{display:none}
  .dw .logo{font-size:19px}
  .leadcard h1{font-size:26px}
  .intro h1{font-size:34px}
}
@media (max-width:760px){
  .dw .topbar .wrap{gap:12px;padding-right:12px}
  .dw .nav{display:flex!important;flex-wrap:nowrap;overflow-x:auto;gap:16px;flex:1;scrollbar-width:none}
  .dw .nav::-webkit-scrollbar{display:none}
  .dw .nav a{white-space:nowrap;font-size:13px}
  .redbtn{padding:6px 9px;font-size:11px}
  .dwsearch .meta2{display:none}
}

/* text pages */
.doc{max-width:760px;padding-bottom:40px}
.doc .crumbs{margin-top:44px}
.doc h1{margin-top:14px;font-size:46px;line-height:1.08;letter-spacing:-.02em}
.doc .lede{margin:18px 0 0;font-size:19px;line-height:1.55;color:var(--ink2)}
.doc h2{margin:40px 0 0;padding-top:14px;border-top:1px solid var(--line);font-size:20px}
.doc p,.doc li{font-size:16px;line-height:1.65;color:var(--ink2)}
.doc ul{padding-left:20px;margin:12px 0 0}
.doc li{margin:6px 0}
.doc .small{font-size:14px;color:var(--muted)}
.doc .btn{background:var(--ink);border-color:var(--ink);color:#fff}
@media (max-width:760px){.doc h1{font-size:34px}}

/* article-style page header (guides, category pages, profiles) */
.crumbs{margin:40px 0 0;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--red);display:flex;align-items:center}
.crumbs a{color:var(--red);text-decoration:none}
.intro{display:block;margin-top:12px}
.intro h1{font-size:50px;line-height:1.06;max-width:920px}
.intro .side{max-width:780px;margin-top:16px}
.intro .side p{font-size:19px;line-height:1.5;color:var(--ink2)}
.intro .side .meta{font-size:14px;color:var(--muted);margin-top:14px;font-family:'Libre Franklin',Arial,sans-serif}
.hero{margin:28px 0 0}
.hero img{width:100%;max-height:560px;aspect-ratio:16/8;object-fit:cover;border-radius:7px;background:var(--ph)}
.hero figcaption{margin-top:8px;font-size:12px;color:var(--muted)}
.picks .lab{color:var(--red)}
.tag{display:inline-block;background:var(--red);color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-radius:3px;padding:5px 8px;line-height:1}
@media (max-width:760px){.intro h1{font-size:32px}.intro .side p{font-size:17px}.hero img{aspect-ratio:4/3}}
.crumbs{display:block}
.crumbs .tag{vertical-align:2px}
.doc .crumbs{color:var(--red);font-size:12px;line-height:1.4}

/* quick picks, styled like a Top stories list */
.picks2{margin-top:36px}
.picks2 h2{font-size:18px;font-weight:700;padding-bottom:10px;border-bottom:2px solid var(--ink)}
.p2grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:36px}
.p2grid li{border-bottom:1px solid var(--line)}
.p2grid li a,.p2grid li.noimg>span{display:grid;grid-template-columns:84px 1fr;gap:14px;align-items:center;padding:14px 0;text-decoration:none;color:var(--ink)}
.p2grid li.noimg>span{display:block}
.p2grid .th{width:84px;height:60px;border-radius:5px;overflow:hidden;background:var(--ph);display:flex;align-items:center;justify-content:center}
.p2grid .th img{width:100%;height:100%;object-fit:cover}
.p2grid .th.lg{background:#fff;box-shadow:inset 0 0 0 1px var(--line)}
.p2grid .th.lg img{object-fit:contain;padding:8px}
.p2grid .th.dark{background:var(--ink)}
.p2grid .th em{font-style:normal;font-weight:700;font-size:22px;color:#BDBDBD}
.p2grid b{display:block;font-size:16px;line-height:1.3;font-weight:700}
.p2grid li a:hover b{color:var(--red)}
.p2grid .m{display:block;margin-top:4px;font-size:13px;line-height:1.45;color:var(--muted)}
@media (max-width:760px){.p2grid{grid-template-columns:1fr}.p2grid li a{grid-template-columns:72px 1fr}.p2grid .th{width:72px;height:54px}}
.compare{margin-top:40px}
.compare h2{font-size:22px}
.compare .tbl table{min-width:620px}
.compare td a{font-weight:600;text-decoration:none}
.compare td a:hover{text-decoration:underline}
.row{scroll-margin-top:130px}
@media (max-width:760px){.glance{padding:14px 16px}.glance li{font-size:14px}}
.dw .head-end{display:flex;gap:18px;align-items:center}
