/* Top Ibogaine Clinics, Look 2 "Where to go" (October 2026) */
:root{
  --page:#F6F3EE; --card:#FFFFFF; --ink:#16202A; --ink2:#46505A; --ink3:#5F6872; --rule:#E2DCD2; --rule2:#D3CBBE;
  --land:#ECE6DA; --mx:#DCCDB2; --sea:#D5E2E8;
  --pin:#E1462B; --pin-dark:#B5321C; --good:#1F6B4A;
  --serif:'Source Serif 4',Georgia,serif; --sans:'Hanken Grotesk',system-ui,-apple-system,'Segoe UI',sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
html,body{margin:0;background:var(--page);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5}
a{color:inherit}
img,svg{max-width:100%}
.wrap{max-width:1312px;margin:0 auto;padding:0 32px}
.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px 12px;z-index:200}

/* header */
.top .wrap{display:flex;align-items:center;gap:34px;height:84px}
.top.solid{background:var(--page);border-bottom:1px solid var(--rule)}
.top.solid .wrap{height:76px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none}
.brand svg{width:32px;height:38px;flex:none}
.brand b{font-family:var(--serif);font-weight:600;font-size:23px;letter-spacing:-.01em}
.nav{display:flex;gap:28px;margin-left:auto;font-weight:500;font-size:16px}
.nav a{text-decoration:none}
.nav a.on{text-decoration:underline;text-decoration-color:var(--pin);text-decoration-thickness:2px;text-underline-offset:6px}
.top.on-photo{color:#fff}
.menu{display:none;margin-left:auto;font:inherit;font-weight:600;background:none;border:0;color:inherit;padding:8px 0;cursor:pointer;text-decoration:underline;text-underline-offset:5px}

/* hero photo */
.hero{position:relative;color:#fff;background:#2b2a28 center/cover no-repeat;padding-bottom:58px}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,16,20,.8) 0%,rgba(14,16,20,.52) 40%,rgba(14,16,20,0) 72%),linear-gradient(0deg,rgba(14,16,20,.55) 0%,rgba(14,16,20,0) 32%)}
.hero > *{position:relative}
.hero-text{padding-top:72px;max-width:660px}
.hero h1{font-family:var(--serif);font-weight:600;font-size:58px;line-height:1.04;letter-spacing:-.018em;margin:0 0 20px}
.hero p{font-size:19px;line-height:1.55;margin:0 0 12px;color:rgba(255,255,255,.93);max-width:580px}
.hero p.first{font-size:21px;color:#fff}
.hero a{color:#fff}
.credit{position:absolute;right:32px;bottom:18px;font-size:12.5px;color:rgba(255,255,255,.85);text-align:right;max-width:460px}
.credit a{color:inherit}
.crumbs{font-size:14px;color:var(--ink3);padding:18px 0 0}
.crumbs a{text-decoration:none}
.crumbs span.sep{margin:0 7px;color:var(--rule2)}
.hero .crumbs{color:rgba(255,255,255,.82)}
.hero .crumbs span.sep{color:rgba(255,255,255,.5)}

/* page head without photo */
.head{padding:8px 0 26px}
.head h1{font-family:var(--serif);font-weight:600;font-size:50px;line-height:1.06;letter-spacing:-.016em;margin:14px 0 14px;max-width:22ch}
.head p{font-size:19px;line-height:1.55;margin:0;max-width:780px;color:var(--ink2)}
.head p.first{color:var(--ink);font-size:20px}
.head p + p{margin-top:10px}
.byline{font-size:14.5px;color:var(--ink3);margin:12px 0 0 !important}
.byline a{color:var(--ink2)}
.hero .byline{font-size:15px;color:rgba(255,255,255,.86)}
.hero .byline a{color:#fff}
.note.help{border-left-color:var(--good)}
.note.help a{font-weight:700;white-space:nowrap}
table.cmp td small.rec{color:var(--pin-dark);font-weight:600}

/* sections */
.sec{padding:52px 0}
.sec.tight{padding:30px 0}
.sec.white{background:var(--card)}
.sec h2,.h2{font-family:var(--serif);font-weight:600;font-size:34px;letter-spacing:-.012em;margin:0 0 8px;line-height:1.14}
.sec h2 + .sub,.sub{color:var(--ink2);font-size:17px;line-height:1.55;margin:0 0 22px;max-width:780px}
.sec h3{font-family:var(--serif);font-weight:600;font-size:22px;margin:0 0 6px;line-height:1.2}
.more{display:inline-block;margin-top:16px;font-weight:600;color:var(--pin-dark);text-decoration:none;border-bottom:2px solid var(--pin);padding-bottom:2px}
.link,.prose a{color:var(--pin-dark);text-decoration-thickness:1.5px;text-underline-offset:3px}
.cols{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px;align-items:start}
.cols.even{grid-template-columns:1fr 1fr}
.cols.side{grid-template-columns:minmax(0,8fr) minmax(0,4fr)}

/* prose */
.prose{max-width:760px}
.prose p,.prose li{font-size:17.5px;line-height:1.68;color:var(--ink)}
.prose p{margin:0 0 16px}
.prose h2{font-family:var(--serif);font-weight:600;font-size:30px;line-height:1.18;margin:38px 0 12px;letter-spacing:-.01em}
.prose h3{font-family:var(--serif);font-weight:600;font-size:22px;margin:26px 0 8px}
.prose ul,.prose ol{padding-left:22px;margin:0 0 18px}
.prose li{margin-bottom:6px}
.prose table{width:100%;border-collapse:collapse;font-size:15.5px;margin:10px 0 22px}
.prose th{text-align:left;font-size:13px;color:var(--ink3);font-weight:600;padding:9px 12px 9px 0;border-bottom:2px solid var(--ink)}
.prose td{padding:12px 12px 12px 0;border-bottom:1px solid var(--rule);vertical-align:top}
.prose blockquote{margin:0 0 18px;padding:4px 0 4px 18px;border-left:3px solid var(--pin);color:var(--ink2)}

/* notes / callouts */
.note{background:var(--card);border-left:3px solid var(--ink);padding:16px 20px;margin:18px 0 22px;font-size:16px;line-height:1.6;max-width:760px}
.note.warn{border-left-color:var(--pin)}
.note b{font-weight:700}
.note p{font-size:16px;margin:0 0 8px}
.note p:last-child{margin:0}

/* destination rows */
.lab{font-family:var(--serif);font-size:15px;font-weight:600;color:var(--ink3);margin:0 0 8px;letter-spacing:.01em}
.dest{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:16px;align-items:center;padding:12px 0;border-top:1px solid var(--rule);text-decoration:none}
.dest img{width:92px;height:68px;object-fit:cover;border-radius:3px;display:block}
.dest b{font-family:var(--serif);font-weight:600;font-size:20px;display:block}
.dest small{display:block;color:var(--ink2);font-size:14.5px;line-height:1.35;margin-top:3px}
.dest .num{text-align:right;font-size:14px;color:var(--ink3);white-space:nowrap}
.dest .num strong{display:block;font-family:var(--serif);font-size:26px;color:var(--ink);font-weight:600;line-height:1}
.dest.world .num strong{font-size:15px;font-family:var(--sans);color:var(--pin-dark)}

/* maps */
.mapcard{background:var(--sea);border-radius:4px;position:relative;overflow:hidden}
.mapcard svg,.mapcard img{display:block;width:100%;height:auto}
.mapcard.landbg{background:var(--land)}
.maplegend{font-size:13px;color:var(--ink3);margin-top:10px;line-height:1.45}
.inset{position:absolute;right:14px;top:14px;background:rgba(255,255,255,.93);border-radius:3px;padding:8px 10px 6px}
.inset b{font-size:12.5px;display:block;margin-bottom:2px}
.inset svg{width:250px;height:auto;display:block}
.legend{display:flex;flex-wrap:wrap;gap:18px;font-size:13.5px;color:var(--ink2);margin-top:12px}
.legend i{display:inline-block;vertical-align:-3px;margin-right:6px}
.legend .lp{width:12px;height:16px;background:var(--pin);border-radius:6px 6px 6px 0;transform:rotate(-45deg)}
.legend .lh{width:14px;height:14px;background:var(--ink);border-radius:2px}
.legend .lb{width:22px;border-top:2px dashed var(--ink);vertical-align:3px}
.legend .lr{width:22px;border-top:4px solid var(--pin);vertical-align:3px}

/* clinic cards */
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.cards.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.ccard{background:var(--card);border-radius:4px;overflow:hidden;text-decoration:none;display:flex;flex-direction:column}
.ccard .ph{aspect-ratio:3/2;position:relative;background:var(--land);overflow:hidden}
.ccard .ph img{width:100%;height:100%;object-fit:cover;display:block}
.ccard .ph .tag{position:absolute;left:10px;top:10px;background:rgba(255,255,255,.95);color:var(--ink);font-size:13px;font-weight:600;padding:4px 9px;border-radius:3px}
.ccard .ph.nomap{display:flex;align-items:flex-end;padding:14px;color:var(--ink2);font-size:14px;line-height:1.4;background:repeating-linear-gradient(135deg,var(--land) 0 14px,#E6DFD1 14px 15px)}
.ccard .bd{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.ccard h3{font-family:var(--serif);font-weight:600;font-size:22px;margin:0;line-height:1.15}
.ccard .city{font-size:14.5px;color:var(--ink3)}
.ccard .flag{font-size:12.5px;font-weight:700;color:var(--pin-dark)}
.kv{display:flex;flex-wrap:wrap;gap:5px 16px;font-size:14.5px;margin-top:auto;padding-top:9px;border-top:1px solid var(--rule)}
.kv b{font-weight:700}
.star{color:#C93A20;font-weight:700}
.pips{display:inline-flex;gap:3px;vertical-align:-1px;margin-right:6px}
.pips i{width:9px;height:9px;border-radius:50%;border:1.5px solid var(--ink);display:inline-block}
.pips i.y{background:var(--ink)}
.pips i.p{background:linear-gradient(90deg,var(--ink) 50%,transparent 50%)}
.hosp{font-size:14.5px;color:var(--ink2)}
.hosp b{font-weight:700;color:var(--ink)}

/* five checks strip */
.checks5{display:grid;grid-template-columns:repeat(5,1fr);border-top:2px solid var(--ink)}
.checks5 div{padding:14px 18px 6px 0}
.checks5 div + div{padding-left:18px;border-left:1px solid var(--rule)}
.checks5 .n{font-family:var(--serif);font-weight:600;font-size:15px;color:var(--pin-dark)}
.checks5 b{display:block;font-family:var(--serif);font-weight:600;font-size:19px;margin:2px 0 4px;line-height:1.2}
.checks5 span{font-size:14.5px;color:var(--ink3)}

/* price ladder */
.ladder{border-top:2px solid var(--ink)}
.lrow{display:grid;grid-template-columns:240px minmax(0,1fr) 150px;gap:18px;align-items:center;padding:9px 0;border-bottom:1px solid var(--rule);text-decoration:none}
.lrow .nm{font-family:var(--serif);font-weight:600;font-size:17px;line-height:1.15}
.lrow .nm small{display:block;font-family:var(--sans);font-weight:400;font-size:13px;color:var(--ink3)}
.lrow .track{position:relative;height:14px}
.lrow .track::before{content:"";position:absolute;left:0;right:0;top:6px;height:2px;background:var(--rule)}
.lrow .bar{position:absolute;top:2px;height:10px;border-radius:5px;background:var(--pin)}
.lrow .bar.pt{width:10px}
.lrow .bar.ret{background:transparent;border:2px solid var(--pin)}
.lrow .bar.unv{background:repeating-linear-gradient(90deg,var(--ink3) 0 6px,transparent 6px 10px)}
.lrow .val{font-variant-numeric:tabular-nums;font-size:15px;text-align:right;color:var(--ink2)}
.axis{display:grid;grid-template-columns:240px minmax(0,1fr) 150px;gap:18px;font-size:12.5px;color:var(--ink3);padding-top:8px}
.axis .ticks{position:relative;height:16px}
.axis .ticks span{position:absolute;transform:translateX(-50%)}
.keyrow{display:flex;flex-wrap:wrap;gap:20px;font-size:13.5px;color:var(--ink2);margin:12px 0 0}
.keyrow i{display:inline-block;width:26px;height:10px;border-radius:5px;margin-right:7px;vertical-align:0}
.keyrow .k1{background:var(--pin)}.keyrow .k2{border:2px solid var(--pin)}.keyrow .k3{background:repeating-linear-gradient(90deg,var(--ink3) 0 6px,transparent 6px 10px)}

/* compare table (stacks on phones) */
table.cmp{width:100%;border-collapse:collapse;font-size:15.5px}
table.cmp th{text-align:left;font-size:13px;color:var(--ink3);font-weight:600;padding:9px 12px 9px 0;border-bottom:2px solid var(--ink)}
table.cmp td{padding:14px 12px 14px 0;border-bottom:1px solid var(--rule);vertical-align:top}
table.cmp td b{font-family:var(--serif);font-weight:600;font-size:18px}
table.cmp td a{text-decoration:none}
table.cmp td small{display:block;color:var(--ink3);font-size:13px;margin-top:2px}

/* scorecard */
.score{border-top:2px solid var(--ink)}
.srow{display:grid;grid-template-columns:28px minmax(0,1fr) 150px;gap:14px;padding:14px 0;border-bottom:1px solid var(--rule);align-items:start}
.srow .mark{width:22px;height:22px;border-radius:50%;border:2px solid var(--ink);margin-top:2px}
.srow .mark.y{background:var(--ink)}
.srow .mark.p{background:linear-gradient(90deg,var(--ink) 50%,transparent 50%)}
.srow .mark.u{border-style:dashed;border-color:var(--rule2)}
.srow .mark.m{background:var(--pin);border-color:var(--pin)}
.srow b{font-family:var(--serif);font-weight:600;font-size:18px}
.srow p{margin:3px 0 0;font-size:15px;line-height:1.5;color:var(--ink2)}
.srow q{font-style:italic;color:var(--ink)}
.srow .st{font-size:14px;font-weight:600;text-align:right}
.srow .src{display:block;font-size:12.5px;color:var(--ink3);margin-top:4px;word-break:break-word}
.srow .src a{color:var(--ink3)}

/* fact box */
.factbox{background:var(--card);border-radius:4px;padding:6px 20px}
.factbox div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--rule);font-size:15.5px}
.factbox div:last-child{border-bottom:0}
.factbox span{color:var(--ink3)}
.factbox b{text-align:right;font-weight:600}
.tiers{display:grid;grid-template-columns:repeat(3,1fr);border-top:2px solid var(--ink);margin:6px 0 16px}
.tiers div{padding:14px 16px 10px 0}
.tiers div + div{padding-left:16px;border-left:1px solid var(--rule)}
.tiers b{display:block;font-family:var(--serif);font-weight:600;font-size:28px}
.tiers span{font-size:14.5px;color:var(--ink2)}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 4px}
.tags span{background:var(--card);border:1px solid var(--rule);border-radius:3px;padding:6px 10px;font-size:14.5px}
.record{border-left:3px solid var(--ink);padding:4px 0 4px 16px;margin:16px 0 0}
.record b{font-family:var(--serif);font-weight:600;font-size:18px;display:block;margin-bottom:6px}
.record li{font-size:15.5px;line-height:1.55;color:var(--ink2);margin-bottom:6px}
.record .when{font-weight:600;color:var(--ink)}
.record .srcs{display:block;font-size:14px;margin-top:2px}
.evnote{font-size:14.5px;color:var(--ink3);margin:4px 0 0}
.geonote{font-size:14.5px;color:var(--ink3);margin:-4px 0 12px}
.drow .fl.rec{color:var(--ink);border-color:var(--ink3)}
.flags{border-left:3px solid var(--pin);padding:4px 0 4px 16px;margin:12px 0 0}
.flags b{font-family:var(--serif);font-weight:600;font-size:18px;display:block;margin-bottom:6px}
.flags li{font-size:15.5px;line-height:1.5;color:var(--ink2);margin-bottom:4px}
.hosplist{margin:14px 0 0;padding:0;list-style:none;border-top:1px solid var(--rule)}
.hosplist li{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--rule);font-size:15.5px}
.hosplist li b{font-weight:700}
.hosplist li small{color:var(--ink3);font-size:13.5px;display:block}
.top2{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px;align-items:start;padding:18px 0 10px}
.top2 h1{font-family:var(--serif);font-weight:600;font-size:44px;line-height:1.06;letter-spacing:-.015em;margin:4px 0 14px}
.top2 .first{font-size:18.5px;line-height:1.55;margin:0 0 16px}
.top2 .claim{font-size:13.5px;color:var(--ink3);margin-top:12px}
.top2 .claim a{color:var(--pin-dark)}
.status{display:inline-block;font-size:13px;font-weight:700;border:1px solid var(--pin);color:var(--pin-dark);border-radius:3px;padding:3px 8px;margin-bottom:8px}

/* faq */
details{border-top:1px solid var(--rule);padding:16px 0}
details:last-of-type{border-bottom:1px solid var(--rule)}
summary{font-family:var(--serif);font-weight:600;font-size:20px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--pin);font-family:var(--sans);font-weight:500}
details[open] summary::after{content:"\2212"}
details p{font-size:16.5px;line-height:1.6;margin:10px 0 0;max-width:780px;color:var(--ink2)}

/* news, states */
.news{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.news a,.news div.it{text-decoration:none;border-top:2px solid var(--ink);padding-top:12px;display:block}
.news time{font-size:13.5px;color:var(--pin-dark);font-weight:600}
.news b{display:block;font-family:var(--serif);font-weight:600;font-size:21px;line-height:1.2;margin:6px 0 8px}
.news span{font-size:15px;line-height:1.5;color:var(--ink2)}
.newslist .it{border-top:2px solid var(--ink);padding:14px 0 18px}
.newslist time{font-size:13.5px;color:var(--pin-dark);font-weight:600}
.newslist h2{font-family:var(--serif);font-weight:600;font-size:24px;margin:6px 0 8px}
.newslist p{font-size:16.5px;line-height:1.6;color:var(--ink2);margin:0 0 8px;max-width:780px}
.states a{display:block;padding:14px 0;border-top:1px solid var(--rule);text-decoration:none}
.states b{font-family:var(--serif);font-weight:600;font-size:19px}
.states span{display:block;font-size:14.5px;color:var(--ink2);margin-top:3px;line-height:1.4}

/* rank list (best of) */
.rank{border-top:2px solid var(--ink)}
.rank a{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--rule);text-decoration:none}
.rank .n{font-family:var(--serif);font-weight:600;font-size:30px;color:var(--pin-dark)}
.rank b{font-family:var(--serif);font-weight:600;font-size:20px;display:block}
.rank small{font-size:14.5px;color:var(--ink2)}
.rank .go{font-weight:600;color:var(--pin-dark);font-size:15px}

/* directory */
.filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:16px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin-bottom:6px}
.filters select{font:inherit;font-weight:600;font-size:15px;background:var(--card);border:1px solid var(--rule2);border-radius:3px;padding:9px 12px;color:var(--ink)}
.chip{font:inherit;font-size:15px;font-weight:500;padding:9px 13px;border-radius:3px;border:1px solid var(--rule2);background:transparent;color:var(--ink);cursor:pointer}
.chip.on,.chip[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.filters .sort{margin-left:auto}
.count{font-size:15px;color:var(--ink2);margin:14px 0 4px}
.layout{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:36px;align-items:start;padding-bottom:70px}
.drow{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px 0;border-bottom:1px solid var(--rule);text-decoration:none}
.drow .th{width:150px;height:104px;border-radius:3px;overflow:hidden;background:var(--land);display:block}
.drow .th img{width:100%;height:100%;object-fit:cover;display:block}
.drow .th.nomap{display:flex;align-items:center;justify-content:center;color:var(--ink3);font-size:12.5px;text-align:center;padding:10px;line-height:1.35;background:repeating-linear-gradient(135deg,var(--land) 0 14px,#E6DFD1 14px 15px)}
.drow h3{font-family:var(--serif);font-weight:600;font-size:21px;margin:0;line-height:1.15}
.drow .loc{font-size:14.5px;color:var(--ink3);margin:3px 0 0}
.drow .kv{border-top:0;padding-top:8px;margin-top:0}
.drow .go{font-weight:600;color:var(--pin-dark);font-size:15px;white-space:nowrap}
.drow .fl{font-size:12.5px;font-weight:700;color:var(--pin-dark);border:1px solid var(--pin);border-radius:3px;padding:2px 6px;margin-left:8px;vertical-align:3px;font-family:var(--sans)}
.side{position:sticky;top:16px}

/* claim page */
.tiercards{display:grid;gap:16px}
.tiercards .t{background:var(--card);border-radius:4px;padding:22px 24px;border-top:3px solid var(--ink)}
.tiercards .t.hot{border-top-color:var(--pin)}
.tiercards h3{font-family:var(--serif);font-weight:600;font-size:22px;margin:0 0 4px}
.tiercards .price{font-family:var(--serif);font-weight:600;font-size:36px}
.tiercards .price small{font-family:var(--sans);font-size:15px;color:var(--ink3);font-weight:400}
.tiercards ul{padding-left:18px;margin:10px 0 16px;font-size:15px;line-height:1.55}
.btn{display:inline-block;font:inherit;font-weight:700;font-size:16px;padding:12px 20px;border-radius:3px;border:0;background:#C93A20;color:#fff;text-decoration:none;cursor:pointer}
.btn.ghost{background:transparent;color:var(--ink);border:1.5px solid var(--ink)}
.checklist{list-style:none;padding:0 !important}
.checklist li{padding-left:28px;position:relative}
.checklist li::before{content:"";position:absolute;left:2px;top:9px;width:12px;height:7px;border-left:2.5px solid var(--good);border-bottom:2.5px solid var(--good);transform:rotate(-45deg)}
.checklist.no li::before{width:12px;height:2.5px;border:0;background:var(--pin);top:13px;transform:none}
.samplebar{background:#C93A20;color:#fff;text-align:center;font-size:14.5px;font-weight:600;padding:10px 16px}
.samplebar a{color:#fff}
.featured{background:var(--card);border-radius:4px;border:2px solid var(--pin);padding:18px 20px;margin:0 0 20px}
.featured .lbl{font-size:12.5px;font-weight:700;color:var(--pin-dark);letter-spacing:.02em}
.featured h3{font-family:var(--serif);font-weight:600;font-size:22px;margin:4px 0}
.provided{display:inline-block;font-size:12.5px;font-weight:700;color:var(--ink3);margin-bottom:8px}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 22px}
.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:3px;display:block}
.video{position:relative;aspect-ratio:16/9;background:#1b2530;border-radius:4px;overflow:hidden;margin:0 0 22px}
.video video,.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover}
.staffgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:0 0 22px}
.staffgrid div{background:var(--card);padding:12px 14px;border-radius:3px}
.staffgrid b{display:block;font-family:var(--serif);font-weight:600}
.staffgrid span{font-size:14px;color:var(--ink2)}

/* checklist page */
.qitem{border-top:1px solid var(--rule);padding:12px 0}
.qitem .q{font-family:var(--serif);font-weight:600;font-size:19px;margin:0 0 4px !important}
.qitem .a{font-size:16px !important;color:var(--ink2) !important;margin:0 !important}
.qitem .lbl{font-weight:700;color:var(--good)}

/* forms + messages */
.msg{font-size:14.5px;margin-top:8px}
.msg.ok{color:#9be2bf}.msg.err{color:#ffb3a3}
.light .msg.ok{color:var(--good)}.light .msg.err{color:var(--pin-dark)}
.inlineform{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.inlineform input[type=email]{flex:1;min-width:220px;font:inherit;font-size:16px;padding:11px 14px;border:1px solid var(--rule2);border-radius:3px}
.hp{position:absolute;left:-9999px}

/* signup + footer */
.signup{background:#22303C;color:#fff;padding:38px 0}
.signup .wrap{display:flex;gap:40px;align-items:center;justify-content:space-between}
.signup b{font-family:var(--serif);font-weight:600;font-size:26px;display:block}
.signup span.s{color:rgba(255,255,255,.8);font-size:15.5px}
.signup form{display:flex;gap:10px}
.signup input[type=email]{font:inherit;font-size:16px;padding:12px 16px;border-radius:3px;border:0;width:300px}
.signup button{font:inherit;font-weight:700;font-size:16px;padding:12px 20px;border-radius:3px;border:0;background:#C93A20;color:#fff;cursor:pointer;white-space:nowrap}
.signup .wrap > div:last-child{flex:none}
footer{background:#16202A;color:rgba(255,255,255,.8);padding:44px 0 30px;font-size:14.5px}
footer .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px}
footer b{color:#fff;display:block;margin-bottom:10px;font-family:var(--serif);font-weight:600;font-size:17px}
footer a{display:block;text-decoration:none;padding:3px 0}
footer a:hover{text-decoration:underline}
footer p{line-height:1.55;margin:0 0 10px}
footer .legal{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.14);padding-top:16px;font-size:13px;color:rgba(255,255,255,.62);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
footer .legal a{display:inline;color:rgba(255,255,255,.8)}

/* exit popup */
.exitwrap{position:fixed;inset:0;z-index:120;display:none;align-items:center;justify-content:center;background:rgba(22,32,42,.6);padding:20px}
.exitwrap.show{display:flex}
.exit{background:var(--page);border-radius:4px;max-width:480px;width:100%;padding:30px 32px 26px;position:relative;border-top:4px solid var(--pin)}
.exit h3{font-family:var(--serif);font-weight:600;font-size:24px;margin:0 0 8px}
.exit p{color:var(--ink2);font-size:15px;line-height:1.55;margin:0 0 14px}
.exit .x{position:absolute;top:8px;right:12px;background:none;border:none;font-size:26px;line-height:1;color:var(--ink2);cursor:pointer;padding:4px}
.exit input[type=email]{width:100%;font:inherit;padding:12px 14px;border:1px solid var(--rule2);border-radius:3px;margin-bottom:10px}

/* mobile nav */
.mnav{display:none}
@media (max-width:1100px){
  .nav{display:none}.menu{display:block}
  .mnav.open{display:block;background:var(--page);border-bottom:1px solid var(--rule);position:relative;z-index:30}
  .mnav.open a{display:block;padding:13px 32px;border-top:1px solid var(--rule);text-decoration:none;font-weight:600;color:var(--ink)}
  .cols,.cols.even,.cols.side,.top2,.layout{grid-template-columns:1fr}
  .side{position:static}
  .cards{grid-template-columns:1fr 1fr}
  .checks5{grid-template-columns:1fr 1fr}
  .checks5 div + div{border-left:0;padding-left:0}
  .news{grid-template-columns:1fr 1fr}
  footer .wrap{grid-template-columns:1fr 1fr}
  .filters .sort{margin-left:0}
}
@media (max-width:640px){
  .wrap{padding:0 18px}
  .mnav.open a{padding:13px 18px}
  .top .wrap,.top.solid .wrap{height:64px}
  .brand svg{width:27px;height:32px}.brand b{font-size:19px}
  .hero{padding-bottom:70px}
  .hero::before{background:linear-gradient(0deg,rgba(14,16,20,.88) 0%,rgba(14,16,20,.62) 58%,rgba(14,16,20,.38) 100%)}
  .hero-text{padding-top:110px}
  .hero h1{font-size:36px;line-height:1.08}
  .hero p.first{font-size:18px}.hero p{font-size:16.5px}
  .credit{left:18px;right:18px;text-align:left;font-size:11.5px}
  .head h1,.top2 h1{font-size:34px}
  .head p,.head p.first{font-size:17px}
  .sec{padding:38px 0}
  .sec h2,.h2{font-size:28px}
  .prose p,.prose li{font-size:17px}
  .prose h2{font-size:26px}
  .dest{grid-template-columns:76px minmax(0,1fr) auto;gap:12px}
  .dest img{width:76px;height:60px}
  .dest b{font-size:18px}
  .cards,.cards.two{grid-template-columns:1fr}
  .checks5{grid-template-columns:1fr}
  .checks5 div{border-bottom:1px solid var(--rule);padding:10px 0}
  .lrow,.axis{grid-template-columns:116px minmax(0,1fr) 84px;gap:10px}
  .lrow .nm{font-size:15px}.lrow .nm small{display:none}
  .lrow .val{font-size:13px}
  .news{grid-template-columns:1fr}
  .srow{grid-template-columns:26px minmax(0,1fr)}
  .srow .st{grid-column:2;text-align:left}
  .tiers{grid-template-columns:1fr}.tiers div + div{border-left:0;padding-left:0;border-top:1px solid var(--rule)}
  table.cmp,table.cmp tbody,table.cmp tr,table.cmp td{display:block;width:100%}
  table.cmp tr:first-child{display:none}
  table.cmp tr{border-bottom:2px solid var(--ink);padding:10px 0}
  table.cmp td{border:0;padding:5px 0;display:flex;justify-content:space-between;gap:12px;align-items:baseline;text-align:right}
  table.cmp td:first-child{text-align:left;display:block;padding-bottom:8px}
  table.cmp td[data-l]::before{content:attr(data-l);color:var(--ink3);font-size:13px;text-align:left;flex:none}
  .prose table{display:block;overflow-x:auto}
  .drow{grid-template-columns:96px minmax(0,1fr)}.drow .th{width:96px;height:84px}.drow .go{display:none}.drow h3{font-size:18.5px}
  .filters{overflow-x:auto;flex-wrap:nowrap;margin:0 -18px;padding:14px 18px}.filters > *{flex:none}
  .signup .wrap{flex-direction:column;align-items:stretch;gap:16px}
  .signup form{flex-direction:column}
  .signup input[type=email]{width:100%}
  footer .wrap{grid-template-columns:1fr}
  .inset{position:static;border-radius:0}
  .inset svg{width:100%}
  .gallery{grid-template-columns:1fr 1fr}
  .staffgrid{grid-template-columns:1fr}
  .rank a{grid-template-columns:36px minmax(0,1fr)}.rank .go{display:none}.rank .n{font-size:24px}
}
@media print{.top,.signup,footer,.exitwrap{display:none}}
