/* ===== culture.org-style magazine skin for bookmaker100.com (homepage) ===== */
:root{
  --paper:#FBF9F4; --ink:#1E1D1D; --grey:#6D6D6D; --geo:#1F6E57;
  --red:#c0392b; --red-dark:#a5301f; --gold:#f0a500; --line:#e6e6e6;
  --navy:#24405e; --navy-2:#2c4a6b;
  --display:'Fraunces',Georgia,serif;
  --sans:'Manrope',system-ui,-apple-system,sans-serif;
  --serif:'Newsreader',Georgia,serif;
  --gutter:clamp(18px,4vw,52px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:1.06rem;line-height:1.62}
img{max-width:100%;height:auto}
a{color:var(--geo)}
a:hover{color:var(--red)}

/* ===== masthead ===== */
.masthead{background:linear-gradient(180deg,var(--navy-2),var(--navy));border-bottom:3px solid var(--geo)}
.mast-row{max-width:1240px;margin:0 auto;display:flex;align-items:center;gap:24px;padding:16px var(--gutter);flex-wrap:wrap}
.masthead .brand{font-family:var(--display);font-weight:900;font-size:1.6rem;color:#fff;text-decoration:none;letter-spacing:-.02em}
.masthead .brand .dot{color:var(--red)}
.masthead .nav{display:flex;flex-wrap:wrap;gap:20px;margin-left:auto}
.masthead .nav a{position:relative;color:#e9eef4;text-decoration:none;font-family:var(--sans);font-weight:700;font-size:.92rem;padding:4px 0}
.masthead .nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--c,var(--geo));transition:right .28s cubic-bezier(.22,.61,.36,1)}
.masthead .nav a:hover{color:#fff}
.masthead .nav a:hover::after{right:0}

/* ===== section head (hero) ===== */
.sec-head{background:var(--paper)}
.sec-head .wrap{max-width:1080px;margin:0 auto;padding:clamp(16px,2.4vw,30px) var(--gutter) clamp(14px,2vw,22px)}
.sc-crumbs{margin:0 0 12px}
.sc-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;font-family:var(--sans);font-size:.78rem;color:var(--grey)}
.sc-crumbs a{color:inherit;text-decoration:none}
.sc-crumbs a:hover{text-decoration:underline}
.sc-crumbs .sep{opacity:.5}
.sec-head .eyebrow{font-family:var(--sans);font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--geo)}
.sec-head h1{font-family:var(--display);font-weight:800;font-size:clamp(1.9rem,3.4vw,3rem);line-height:1.05;letter-spacing:-.03em;color:var(--ink);margin:6px 0 0}
.sec-head .manifesto{font-family:var(--sans);font-size:clamp(.98rem,1.2vw,1.08rem);line-height:1.5;color:var(--grey);max-width:72ch;margin:12px 0 0}
.mast-byline{font-family:var(--sans);font-size:.88rem;color:var(--grey);margin:14px 0 0}
.mast-byline a{color:var(--ink);font-weight:700;text-decoration:none}
.mast-byline a:hover{text-decoration:underline}
.mast-byline .sep{margin:0 7px;opacity:.5}

/* ===== trust pillars ===== */
.trust{border-top:1px solid rgba(30,29,29,.1);border-bottom:1px solid rgba(30,29,29,.1);background:color-mix(in srgb,var(--geo) 6%,var(--paper))}
.trust .wrap{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:16px var(--gutter)}
.trust .pillar{display:flex;align-items:center;gap:10px;font-family:var(--sans)}
.trust .pillar svg{width:26px;height:26px;flex:0 0 auto;color:var(--geo)}
.trust .pillar b{display:block;font-size:.88rem}
.trust .pillar span{display:block;font-size:.78rem;color:var(--grey);line-height:1.3}
@media(max-width:860px){.trust .wrap{grid-template-columns:repeat(2,1fr)}}

/* ===== ledger (content) ===== */
.mp-ledger{max-width:1080px;margin:0 auto;padding:clamp(30px,4vw,52px) var(--gutter)}
.content-section{margin:0 0 34px}
.mp-ledger h2{font-family:var(--display);font-weight:700;font-size:clamp(1.45rem,2.2vw,1.9rem);line-height:1.15;letter-spacing:-.02em;margin:38px 0 14px}
.mp-ledger h3{font-family:var(--display);font-weight:700;font-size:1.22rem;margin:24px 0 10px}
.mp-ledger h4{font-family:var(--sans);font-weight:800;font-size:1rem;margin:18px 0 8px}
.mp-ledger p{margin:0 0 14px}
.mp-ledger ul,.mp-ledger ol{margin:0 0 16px;padding-left:24px}
.mp-ledger li{margin:5px 0}

/* eeat / notices */
.affiliate-disclosure,.info-box{background:#faf7f5;border-left:4px solid var(--red);padding:13px 17px;margin:0 0 22px;border-radius:6px;font-size:.95em;line-height:1.55;font-family:var(--sans)}
.info-box h4{margin:0 0 6px}
.updated-badge{display:inline-block;background:color-mix(in srgb,var(--geo) 12%,#fff);color:var(--geo);font-family:var(--sans);font-weight:700;font-size:.82rem;padding:6px 14px;border-radius:20px;margin:0 0 20px}

/* toc */
.toc{border:1px solid var(--line);border-radius:12px;background:#fff;padding:18px 22px;margin:0 0 30px}
.toc h3{margin:0 0 10px;font-family:var(--sans);font-size:.8rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--grey)}
.toc ol{columns:2;gap:28px;margin:0;padding-left:20px;font-family:var(--sans);font-size:.92rem}
.toc a{color:var(--ink);text-decoration:none}
.toc a:hover{color:var(--red);text-decoration:underline}
@media(max-width:700px){.toc ol{columns:1}}

/* ===== tables (lc-toplist / lc-facts) ===== */
.comparison-table{overflow-x:auto;margin:14px 0 26px}
.comparison-table table{width:100%;border-collapse:collapse;font-size:.93em;font-family:var(--sans);background:#fff}
.comparison-table th,.comparison-table td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:middle}
.comparison-table th{background:#1a1a1a;color:#fff;font-weight:700}
.comparison-table tbody tr:nth-child(even){background:#faf9f6}
.rank-num{display:inline-block;width:28px;height:28px;line-height:28px;border-radius:50%;background:var(--red);color:#fff;font-weight:700;text-align:center;font-size:.85em}
.brand-name{font-weight:800}
.star-rating,.stars{color:var(--gold);letter-spacing:1px}

/* two-column fact tables inside review cards */
.bk-card .comparison-table th{background:#faf7f5;color:var(--ink)}
.bk-card .comparison-table td:first-child{background:#faf7f5;font-weight:700;width:34%}

/* ===== buttons ===== */
.btn,.btn-primary{display:inline-block;background:var(--red)!important;color:#fff!important;font-family:var(--sans);font-weight:700;text-decoration:none;padding:10px 20px;border-radius:7px;white-space:nowrap;border:0}
.btn:hover,.btn-primary:hover{background:var(--red-dark)!important;color:#fff!important}
.btn-sm{padding:7px 14px;font-size:.88em}

/* ===== review cards (lc-rev) ===== */
.bk-card{border:1px solid #e4e4e4;border-radius:14px;margin:24px 0;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.06);overflow:hidden}
.bk-card-header{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:16px 20px;background:#faf7f5;border-bottom:1px solid #eee;font-family:var(--sans)}
.bk-rank{font-family:var(--display);font-weight:700;color:var(--red);font-size:1.15em}
.bk-rank::before{content:"#"}
.bk-name{font-family:var(--display);font-size:1.3em;font-weight:700}
.bk-rating{margin-left:auto;font-weight:700}
.bk-card-body{padding:18px 20px}
.bk-card-highlights{display:flex;flex-wrap:wrap;gap:14px;margin:0 0 14px;font-family:var(--sans)}
.bk-highlight{flex:1 1 150px;border:1px solid #ececec;border-radius:10px;padding:10px 14px;background:#fff;text-align:center}
.bk-highlight .label{display:block;font-size:.7em;text-transform:uppercase;letter-spacing:.05em;color:#8a8a8a}
.bk-highlight .value{display:block;font-weight:800;margin-top:3px}
.bk-card-desc>h3:first-child{margin-top:0}
.bk-card-features{display:flex;flex-wrap:wrap;gap:16px;margin:16px 0 4px}
.bk-card-features>div{flex:1 1 240px;border:1px solid var(--line);border-radius:10px;padding:14px 16px;font-family:var(--sans)}
.bk-pros{background:#f2fbf5;border-color:#bfe6cd!important}
.bk-cons{background:#fbf3f2;border-color:#eecfca!important}
.bk-card-features h4{margin:0 0 8px;font-size:1em}
.bk-card-features ul{margin:0;padding-left:18px}
.bk-card-features li{margin:3px 0;font-size:.92em}
.bk-card-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:14px 20px;background:#faf7f5;border-top:1px solid #eee;font-family:var(--sans)}
.bonus-text{font-weight:800;font-size:1.05em}
.bonus-sub{font-size:.82em;color:var(--grey);margin-top:2px}
.bk-card-cta .btn{padding:13px 28px}

/* ===== FAQ ===== */
.faq-section{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}
.faq-item+.faq-item{border-top:1px solid var(--line)}
.faq-question{display:block;width:100%;text-align:left;background:none;border:0;padding:16px 20px;font-family:var(--sans);font-weight:700;font-size:1rem;color:var(--ink);cursor:pointer;position:relative}
.faq-question::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:1.3em;color:var(--red)}
.faq-item.active .faq-question::after{content:"\2212"}
.faq-answer{display:none;padding:0 20px 16px}
.faq-item.active .faq-answer{display:block}
.faq-answer-inner p{margin:0}

/* ===== author box ===== */
.author-box{display:flex;gap:18px;align-items:flex-start;border:1px solid var(--line);border-radius:14px;background:#fff;padding:20px;margin:36px 0 0;font-family:var(--sans)}
.author-avatar{flex:0 0 64px;width:64px;height:64px;border-radius:50%;background:var(--navy);color:#fff;font-family:var(--display);font-weight:700;font-size:1.4rem;display:flex;align-items:center;justify-content:center}
.author-info h4{margin:0 0 2px;font-size:1.1rem}
.author-title{font-size:.82rem;color:var(--geo);font-weight:700;margin:0 0 8px}
.author-bio{font-size:.9rem;color:var(--grey);margin:0;line-height:1.5}

/* misc */
.text-sm{font-size:.86em}
.text-muted{color:var(--grey);font-family:var(--sans)}

/* ===== footer ===== */
.foot{background:linear-gradient(180deg,var(--navy-2),var(--navy));color:#e9eef4;padding:clamp(32px,4vw,44px) 0 22px;margin-top:48px}
.foot>.wrap{max-width:1240px;margin:0 auto;padding:0 var(--gutter)}
.foot-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:28px;padding-bottom:26px;border-bottom:1px solid rgba(255,255,255,.14)}
.foot .brand{font-family:var(--display);font-weight:900;font-size:1.7rem;margin-bottom:10px}
.foot .brand .dot{color:var(--red)}
.foot-about{font-family:var(--sans);font-size:.95rem;line-height:1.5;color:#b9c4d2;margin:0}
.foot-col .foot-h{font-family:var(--sans);font-weight:800;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:#fff;margin:0 0 8px}
.foot-col a{display:block;color:#b9c4d2;text-decoration:none;font-family:var(--sans);font-size:.88rem;padding:3px 0}
.foot-col a:hover{color:#fff}
.foot-bottom{padding-top:16px;font-family:var(--sans);font-size:.8rem;color:#8fa0b5}
@media(max-width:760px){.foot-top{grid-template-columns:1fr 1fr;gap:20px 14px}}

/* ===== affiliate toplist cards (ohc) ===== */
.ohc-card{position:relative;border:1px solid #e2e2e2;border-radius:14px;padding:24px 20px 22px;margin:24px 0;text-align:center;background:#fff;font-family:var(--sans)}
.ohc-card.ohc-top{border:2px solid var(--geo)}
.ohc-rank{position:absolute;top:-13px;left:-9px;width:32px;height:32px;line-height:32px;border-radius:50%;background:var(--ink);color:#fff;font-family:var(--display);font-weight:700;font-size:1.02em;text-align:center}
.ohc-badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--geo);color:#fff;font-size:.72em;font-weight:800;letter-spacing:.08em;padding:6px 18px;border-radius:20px;white-space:nowrap}
.ohc-logo{background:#f3f5f8;border:1px solid #ececec;border-radius:10px;padding:14px;margin:0 auto 14px;width:124px;height:84px;display:flex;align-items:center;justify-content:center}
.ohc-logo .mono{font-family:var(--display);font-weight:900;font-size:1.9rem;line-height:1;color:#fff;background:var(--mono,#24405e);border-radius:9px;padding:10px 16px;letter-spacing:-.02em}
.ohc-stars{color:var(--geo);font-size:1.05em;letter-spacing:1px;margin-bottom:4px}
.ohc-stars b{color:var(--geo);margin-left:7px;letter-spacing:0;font-size:1.05em}
.ohc-name{font-family:var(--display);font-weight:700;font-size:1.3em;margin-bottom:4px;color:var(--ink)}
.ohc-bonus{font-weight:800;font-size:1.1em;line-height:1.3;margin-bottom:4px;color:var(--ink)}
.ohc-blurb{color:#777;font-size:.88em;margin-bottom:16px}
.ohc-btn{display:block;background:#e8623d!important;color:#fff!important;font-weight:700;font-size:1.02em;text-decoration:none;padding:14px 32px;border-radius:28px;white-space:nowrap}
.ohc-btn:hover{background:#d24e2a!important;color:#fff!important}
@media(min-width:768px){
  .ohc-card{display:flex;align-items:center;text-align:left;gap:26px;padding:22px 26px}
  .ohc-rank{position:static;width:auto;height:auto;line-height:1;border-radius:0;background:none;color:#444;font-size:1.5em;flex:0 0 34px;text-align:center}
  .ohc-badge{top:-14px;left:64px;transform:none}
  .ohc-logo{flex:0 0 124px;margin:0}
  .ohc-body{flex:1;min-width:0}
  .ohc-stars,.ohc-name,.ohc-bonus{margin-bottom:3px}
  .ohc-blurb{margin-bottom:0}
  .ohc-cta{flex:0 0 auto}
}

/* real brand logos in toplist tiles */
.ohc-logo img{max-width:100%;max-height:60px;width:auto;height:auto;object-fit:contain}

/* ===== mobile: hamburger nav + above-the-fold = H1 + byline + affiliate H2 + cards ===== */
.mast-toggle{display:none;background:none;border:0;color:#e9eef4;padding:6px;cursor:pointer;margin-left:auto}
.mast-toggle svg{width:26px;height:26px;display:block}
@media(max-width:860px){
  .mast-row{flex-wrap:wrap;gap:12px;padding-top:12px;padding-bottom:12px}
  .mast-toggle{display:block}
  .masthead .nav{display:none;width:100%;flex-direction:column;gap:0;margin-left:0;padding:6px 0 2px}
  .masthead.mnav-open .nav{display:flex}
  .masthead .nav a{padding:10px 2px;font-size:1rem;border-top:1px solid rgba(255,255,255,.09)}
  .masthead .nav a::after{display:none}

  /* hide everything between the byline and the affiliate table */
  .sc-crumbs,.sec-head .eyebrow,.sec-head .manifesto,.trust{display:none}
  .sec-head .wrap{padding-top:14px;padding-bottom:8px}
  .sec-head h1{font-size:1.5rem}
  .mast-byline{margin-top:8px;font-size:.82rem}
  .mp-ledger{padding-top:8px}

  /* reorder: affiliate section (H2 + cards) first, disclosure directly after it */
  .ledger-inner{display:flex;flex-direction:column}
  .ledger-inner>*{order:3}
  .ledger-inner>#lineup,.ledger-inner>#list,.ledger-inner>#comparison,.ledger-inner>.aff-top{order:1}
  .ledger-inner>.affiliate-disclosure{order:2;margin-top:4px}
  #lineup>h2:first-child,#list>h2:first-child,#comparison>h2:first-child,.aff-top>h2:first-child{margin-top:0}
  #lineup>h2+p,#list>h2+p,#comparison>h2+p,.aff-top>h2+p{display:none}
  .ohc-card{padding:22px 14px 16px;margin:24px 0 14px}
  .ohc-badge{margin-bottom:10px}
}

/* ===== designed hero (homepage: .sec-hero) ===== */
.sec-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#132e25 0%,#1a4a39 45%,#1F6E57 100%);border-bottom:3px solid #e8623d}
.sec-hero::before{content:"";position:absolute;top:-120px;right:-80px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(232,98,61,.28),transparent 65%);pointer-events:none}
.sec-hero::after{content:"";position:absolute;bottom:-140px;left:-100px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(240,192,74,.14),transparent 65%);pointer-events:none}
.sec-hero .wrap{position:relative;z-index:1;padding-top:clamp(22px,3vw,40px);padding-bottom:clamp(20px,2.6vw,34px)}
.sec-hero .sc-crumbs ol{color:rgba(233,238,244,.75)}
.sec-hero .sc-crumbs a:hover{color:#fff}
.sec-hero .eyebrow{display:inline-block;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);color:#DCEDE5;padding:5px 14px;border-radius:20px;margin-bottom:4px}
.sec-hero h1{color:#fff;text-shadow:0 2px 24px rgba(10,25,20,.35)}
.sec-hero h1 .hl{color:#F5C04A;font-style:italic;font-weight:700}
.sec-hero .manifesto{color:#BED4CA}
.sec-hero .mast-byline{color:#9FC2B4}
.sec-hero .mast-byline a{color:#fff}
.sec-hero .mast-byline b{color:#DCEDE5}
.sec-hero+.trust{border-top:0;background:color-mix(in srgb,#1F6E57 9%,var(--paper))}
@media(max-width:860px){
  .sec-hero .wrap{padding-top:18px;padding-bottom:16px}
  .sec-hero h1{font-size:1.55rem}
  .sec-hero::before{width:260px;height:260px;top:-80px;right:-60px}
}

/* ===== smooth hero: flowing contour curves + wave divider ===== */
.sec-hero{border-bottom:0;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201000%20420%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M-60%20330%20C%20200%20230%20420%20430%20660%20300%20C%20820%20215%20940%20190%201060%20230%22%20stroke%3D%22%23ffffff%22%20stroke-opacity%3D%220.07%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M0%20380%20C%20260%20280%20480%20470%20720%20330%20C%20870%20245%20980%20225%201080%20265%22%20stroke%3D%22%23F5C04A%22%20stroke-opacity%3D%220.11%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M-100%20265%20C%20160%20170%20380%20345%20620%20235%20C%20790%20158%20920%20140%201040%20175%22%20stroke%3D%22%23ffffff%22%20stroke-opacity%3D%220.05%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M40%20430%20C%20300%20330%20520%20500%20760%20365%20C%20900%20287%201000%20265%201100%20300%22%20stroke%3D%22%23ffffff%22%20stroke-opacity%3D%220.045%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E") center/cover no-repeat,radial-gradient(circle at 88% -10%,rgba(232,98,61,.26),transparent 55%),radial-gradient(circle at -5% 110%,rgba(240,192,74,.15),transparent 55%),linear-gradient(135deg,#132e25 0%,#1a4a39 45%,#1F6E57 100%)}
.sec-hero::before{display:none}
.sec-hero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;top:auto;width:auto;height:64px;border-radius:0;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201440%2090%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%2044%20C%20300%2092%20760%20-8%201440%2052%20L1440%2090%20L0%2090%20Z%22%20fill%3D%22%23EDF2EC%22%2F%3E%3Cpath%20d%3D%22M0%2044%20C%20300%2092%20760%20-8%201440%2052%22%20fill%3D%22none%22%20stroke%3D%22%23e8623d%22%20stroke-width%3D%224%22%2F%3E%3C%2Fsvg%3E") center bottom/100% 100% no-repeat;pointer-events:none}
.sec-hero .wrap{padding-bottom:clamp(64px,7vw,92px)}
.sec-hero+.trust{background:#EDF2EC;border-top:0}
@media(max-width:860px){
  .sec-hero::after{height:34px}
  .sec-hero .wrap{padding-bottom:48px}
}

/* pages without a trust strip: wave fills in paper so it matches the content below */
.sec-hero:not(:has(+ .trust))::after{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201440%2090%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20d%3D%22M0%2044%20C%20300%2092%20760%20-8%201440%2052%20L1440%2090%20L0%2090%20Z%22%20fill%3D%22%23FBF9F4%22%2F%3E%3Cpath%20d%3D%22M0%2044%20C%20300%2092%20760%20-8%201440%2052%22%20fill%3D%22none%22%20stroke%3D%22%23e8623d%22%20stroke-width%3D%224%22%2F%3E%3C%2Fsvg%3E")}

/* ===== authors page: team cards ===== */
.team-grid{display:grid;gap:26px;margin:18px 0}
.team-card{position:relative;border:1px solid #e4e4e4;border-radius:14px;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.06);padding:28px 26px 22px;font-family:var(--sans)}
.team-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:14px 0 0 14px;background:linear-gradient(180deg,#1F6E57,#F5C04A)}
.team-avatar{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#132e25,#1F6E57);color:#fff;font-family:var(--display);font-weight:700;font-size:1.5rem;display:flex;align-items:center;justify-content:center;margin-bottom:14px;box-shadow:0 4px 14px rgba(19,46,37,.25)}
.team-card h3{margin:0 0 2px;font-size:1.45rem}
.team-card>p:first-of-type{margin:0 0 14px}
.team-card>p:first-of-type strong{display:inline-block;background:color-mix(in srgb,#1F6E57 12%,#fff);color:#1F6E57;font-size:.8rem;font-weight:800;letter-spacing:.04em;padding:5px 13px;border-radius:20px}
.team-card h4{color:var(--geo);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;margin:20px 0 8px}
.team-card p{font-family:var(--serif);font-size:.99rem}
.team-card ul{font-family:var(--serif);font-size:.97rem}
.team-card li{margin:4px 0}
@media(min-width:860px){
  .team-card{padding:30px 32px 26px}
  .team-avatar{position:absolute;top:28px;right:28px;margin:0}
  .team-card h3,.team-card>p:first-of-type{padding-right:96px}
}

/* author photos inside avatar circles */
.team-avatar img,.author-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
.team-avatar,.author-avatar{overflow:hidden;padding:0}

/* author face in the hero byline */
.mast-byline{display:flex;align-items:center;flex-wrap:wrap;gap:4px}
.byline-face{width:30px;height:30px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.4);margin-right:6px;box-shadow:0 2px 8px rgba(10,25,20,.3)}

/* ===== mid-page author pull-quote ===== */
.author-quote{display:flex;gap:24px;align-items:flex-start;background:#EDF4EE;border-left:5px solid #1F6E57;border-radius:10px;padding:28px 32px;margin:38px 0}
.author-quote img{width:76px;height:76px;border-radius:50%;object-fit:cover;flex:0 0 76px;border:3px solid #fff;box-shadow:0 3px 12px rgba(19,46,37,.18)}
.aq-text{min-width:0}
.aq-quote{font-family:var(--serif);font-style:italic;font-size:1.05rem;line-height:1.68;color:#2b2b28;margin:0 0 12px}
.aq-quote::before{content:"\201C\201C";letter-spacing:-.12em;font-family:var(--display);font-style:normal;font-weight:900;color:#1F6E57;font-size:1.5em;line-height:0;vertical-align:-.3em;margin-right:8px}
.aq-byline{font-family:var(--sans);font-size:.9rem;color:#55605a;margin:0}
.aq-byline b{color:#1F6E57}
@media(max-width:700px){.author-quote{flex-direction:column;gap:14px;padding:22px 18px}.author-quote img{width:60px;height:60px;flex:0 0 60px}}

/* ===== review screenshots ===== */
.rev-shot{margin:18px 0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}
.rev-shot img{display:block;width:100%;height:auto}
.rev-shot figcaption{font-family:var(--sans);font-size:.8rem;color:var(--grey);padding:8px 12px;border-top:1px solid var(--line);background:#faf9f6}

/* ===== newcroft compatibility layer (existing content blocks) ===== */
table.facts{width:100%;border-collapse:collapse;font-size:.93em;font-family:var(--sans);background:#fff;margin:14px 0 22px}
table.facts th,table.facts td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:middle}
table.facts th{background:#faf7f5;color:var(--ink);font-weight:700;width:34%}
.notice{background:#fbf3f2;border-left:4px solid var(--red);padding:13px 17px;margin:0 0 22px;border-radius:6px;font-size:.95em;line-height:1.55;font-family:var(--sans)}
.infobox,.factblock{background:#EDF4EE;border-left:4px solid var(--geo);padding:13px 17px;margin:0 0 22px;border-radius:6px;font-size:.95em;line-height:1.55;font-family:var(--sans)}
.rgblock{background:linear-gradient(180deg,var(--navy-2),var(--navy));color:#dbe4f0;border-radius:14px;padding:24px 26px;margin:34px 0;font-family:var(--sans);font-size:.95rem}
.rgblock h2,.rgblock h3{color:#fff;margin-top:0;font-family:var(--display)}
.rgblock a{color:#9ad1ff}
.oplogo-text{display:flex;align-items:center;justify-content:center;background:var(--navy);color:#fff;border-radius:9px;font-family:var(--display);font-weight:900;font-size:.8rem;text-align:center;padding:10px 12px;letter-spacing:-.01em;min-height:48px}
.agebar{background:#132e25;color:#BED4CA;font-size:.78rem;text-align:center;padding:6px 10px;font-family:var(--sans)}
.agebar a{color:#DCEDE5}
.footer-compliance{border-top:1px solid rgba(255,255,255,.14);margin-top:16px;padding-top:16px;text-align:center;font-size:.85rem;color:#b9c4d2;font-family:var(--sans)}
.footer-compliance strong{color:#fff}
.footer-compliance a{color:#fff}

/* ===== white logo tiles (site-wide) ===== */
.ohc-logo{background:#fff}
img.oplogo{background:#fff;border:1px solid #ececec;border-radius:8px;padding:4px;object-fit:contain;width:96px;height:48px;display:block}
.oplogo-text{background:#fff;color:var(--navy);border:1px solid #ececec}
.agebar{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ===== clustered nav dropdowns ===== */
.nav-group{position:relative}
.nav-group>a .caret{font-size:.7em;opacity:.7;margin-left:3px}
.nav-drop{display:none;position:absolute;top:100%;left:-10px;min-width:220px;background:var(--navy);border:1px solid rgba(255,255,255,.14);border-radius:0 0 10px 10px;padding:8px 0;z-index:50;box-shadow:0 10px 26px rgba(10,16,28,.45)}
.nav-group:hover .nav-drop,.nav-group:focus-within .nav-drop{display:block}
.nav-drop a{display:block;padding:8px 16px !important;font-size:.88rem;color:#e9eef4;white-space:nowrap}
.nav-drop a::after{display:none}
.nav-drop a:hover{background:rgba(255,255,255,.08)}
@media(max-width:860px){
  .nav-group{width:100%}
  .nav-drop{display:block;position:static;min-width:0;border:0;box-shadow:none;background:none;padding:0 0 4px 14px}
  .nav-drop a{border-top:0 !important;padding:8px 2px !important;color:#b9c4d2}
}
.masthead .nav{align-items:center}
.nav-group{display:inline-flex;align-items:center}
.nav-group>a{display:inline-flex;align-items:center;gap:2px}
