:root{--bg:#f6f7f4;--paper:#fff;--ink:#13201a;--muted:#657069;--line:#dfe4df;--green:#16794a;--green-soft:#e8f5ee;--lime:#d9f26e;--amber:#a76908;--amber-soft:#fff2d8;--red:#b23a32;--red-soft:#fdebe9;--navy:#17342a;--shadow:0 14px 42px rgba(22,42,32,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif}.wrap{width:min(1240px,calc(100% - 36px));margin:0 auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(246,247,244,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(223,228,223,.85)}.header-inner{height:72px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font:800 20px 'Manrope';text-decoration:none}.brand-mark{display:grid;place-items:center;width:33px;height:33px;border-radius:10px;background:var(--ink);color:var(--lime)}.brand-dot{color:var(--green);font-weight:800}
.site-header nav{display:flex;gap:25px}.site-header nav a{color:var(--muted);text-decoration:none;font-size:14px;font-weight:700}.site-header nav a:hover{color:var(--ink)}
.hero{padding:74px 0 34px}.compact-hero{padding-bottom:20px}.eyebrow{text-transform:uppercase;letter-spacing:.11em;font-size:12px;font-weight:800;color:var(--green);margin-bottom:14px}.hero h1,.section-head h2,.method h2,.lounge-callout h2{font-family:'Manrope';letter-spacing:-.045em}.hero h1{font-size:clamp(46px,7vw,82px);line-height:.98;margin:0;max-width:1050px}.hero h1 span{color:var(--green)}.hero-copy{font-size:20px;line-height:1.55;color:var(--muted);max-width:780px;margin:25px 0 30px}.controls{display:grid;grid-template-columns:1.35fr .8fr .8fr;gap:12px}.controls.four{grid-template-columns:1.25fr .72fr .72fr .82fr}.controls.five{grid-template-columns:1.2fr .68fr .68fr .8fr .9fr}.control-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:17px 18px;min-width:0}.primary-control{box-shadow:var(--shadow)}.control-card label{display:block;font-size:13px;font-weight:800;margin-bottom:10px;color:var(--muted)}.input-row{display:flex;align-items:baseline;gap:6px}.input-row .currency{font:700 22px 'Manrope';color:var(--green)}.input-row input{width:155px;border:0;background:transparent;font:800 31px 'Manrope';color:var(--ink);outline:none}.input-row.compact input{width:72px;font-size:28px}.suffix{color:var(--muted);font-weight:700}.control-card select,.sort-box select{width:100%;height:45px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 12px;font-weight:700;color:var(--ink);font-size:15px}.helper{display:block;color:var(--muted);font-size:11px;line-height:1.4;margin-top:8px}.range{width:100%;accent-color:var(--green);margin-top:8px}.micro-rule{margin:17px 2px 0;color:var(--muted);font-size:14px}.micro-rule strong{color:var(--ink)}
.snapshot{padding:14px 0 55px}.snapshot-label{font-size:13px;color:var(--muted);font-weight:800;margin-bottom:10px}.best-card{background:var(--navy);color:#fff;border-radius:25px;padding:27px;box-shadow:var(--shadow)}.best-grid{display:grid;grid-template-columns:1.5fr repeat(3,.72fr) .8fr;gap:18px;align-items:center}.rank-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--lime);font-weight:800;margin-bottom:5px}.best-title{font:800 25px 'Manrope';letter-spacing:-.03em}.issuer{font-size:12px;color:#b8c6bf;margin-top:5px}.metric-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#a8bab1;font-weight:800}.metric-value{font:800 29px 'Manrope';margin-top:4px}.metric-value.pos{color:var(--lime)}.metric-value.mid{color:#ffe49e}.metric-value.neg{color:#ffb3aa}.metric-sub{font-size:10px;color:#a8bab1;margin-top:3px}.best-verdict{justify-self:end;text-align:right}.score-pill{display:inline-flex;align-items:center;justify-content:center;min-width:80px;height:42px;border-radius:999px;background:var(--lime);color:var(--navy);font:800 18px 'Manrope'}.best-verdict p{font-size:12px;color:#b9c7c0;margin:8px 0 0}
.card-section{padding:14px 0 55px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}.section-head h2,.method h2,.lounge-callout h2{font-size:42px;margin:0}.sort-box{display:flex;align-items:center;gap:9px}.sort-box label{font-size:12px;color:var(--muted);font-weight:800;white-space:nowrap}.sort-box select{width:180px}.table-shell{background:var(--paper);border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 6px 22px rgba(23,52,42,.04)}.card-table-head,.card-row{display:grid;grid-template-columns:42px minmax(215px,1.85fr) .72fr .72fr .9fr .95fr 1.02fr;gap:13px;align-items:center}.card-table-head{padding:12px 18px;background:#eef2ed;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.card-row{padding:16px 18px;border-top:1px solid var(--line);cursor:pointer;transition:background .15s}.card-row:hover{background:#fafbf9}.rank-col{text-align:center}.rank-num{font:800 17px 'Manrope';color:var(--muted)}.card-row:first-child .rank-num{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--lime);color:var(--navy)}.card-name{font-weight:800}.card-meta{font-size:11px;color:var(--muted);margin-top:3px}.money{font:800 20px 'Manrope'}.money.pos{color:var(--green)}.money.mid{color:var(--amber)}.money.neg{color:var(--red)}.subscore{font-size:10px;color:var(--muted);margin-top:3px}.lounge-score{font:800 19px 'Manrope'}.lounge-score span{font-size:11px;color:var(--muted)}.overall-score{font:800 17px 'Manrope';display:inline-block;margin-right:8px}.verdict{display:inline-block;border-radius:999px;padding:7px 9px;font-size:10px;font-weight:800}.verdict.great{background:var(--green-soft);color:var(--green)}.verdict.meh{background:var(--amber-soft);color:var(--amber)}.verdict.bad{background:var(--red-soft);color:var(--red)}.detail{grid-column:1/-1;background:#f8faf7;border-radius:14px;padding:15px 16px;margin-top:3px;display:none}.card-row.open .detail{display:block}.detail-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.detail-grid.six{grid-template-columns:repeat(6,1fr)}.detail-item{font-size:11px;color:var(--muted)}.detail-item strong{display:block;color:var(--ink);font-size:14px;margin-top:3px}.lounge-detail{margin-top:12px;padding:10px 12px;border-left:3px solid var(--green);background:#edf6f0;border-radius:7px;font-size:11px;color:#435047}.detail-note{font-size:11px;color:var(--muted);margin-top:10px}.table-note{font-size:11px;color:var(--muted);margin:10px 4px 0}
.lounge-callout{margin:18px auto 25px;background:var(--navy);color:#fff;border-radius:24px;padding:28px;display:flex;align-items:center;justify-content:space-between;gap:25px}.lounge-callout h2{font-size:34px}.lounge-callout p{color:#bdc9c3;max-width:700px;margin:10px 0 0;line-height:1.5}.button-link{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 17px;border-radius:12px;background:var(--lime);color:var(--navy);font-weight:800;text-decoration:none;white-space:nowrap}
.method{padding:55px 0 70px}.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:28px}.method article{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:20px}.method article h3{font:800 18px 'Manrope';margin:16px 0 8px}.method article p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}.tag{display:inline-block;padding:6px 8px;border-radius:7px;font-size:10px;font-weight:800;letter-spacing:.06em}.tag.cash{background:var(--green-soft);color:var(--green)}.tag.easy{background:#edf0ff;color:#4555a4}.tag.conditional{background:var(--amber-soft);color:var(--amber)}.tag.personal{background:#efe9fb;color:#6d4aa3}.disclaimer,.source-note{color:var(--muted);font-size:12px;line-height:1.55;margin-top:18px;max-width:900px}
.lounge-section{padding:20px 0 35px}.lounge-table-wrap{overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:20px}.lounge-table{border-collapse:collapse;width:100%;min-width:950px}.lounge-table th{background:#eef2ed;text-align:left;padding:13px 15px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.lounge-table td{padding:15px;border-top:1px solid var(--line);vertical-align:top;font-size:13px;line-height:1.45}.lounge-table td:first-child{min-width:230px}.lounge-table td span{display:block;color:var(--muted);font-size:11px;margin-top:3px}.quality{display:inline-grid;place-items:center;width:48px;height:34px;border-radius:999px;font:800 15px 'Manrope'}.quality.elite{background:var(--green-soft);color:var(--green)}.quality.strong{background:#edf6f0;color:#23613f}.quality.good{background:#eef0ff;color:#4e5e9b}.quality.fair{background:var(--amber-soft);color:var(--amber)}.quality.weak{background:var(--red-soft);color:var(--red)}.lounge-method{padding-top:40px}.logic-box{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:20px;margin-top:18px}.logic-box h3{margin:0 0 8px;font:800 19px 'Manrope'}.logic-box p{margin:0;color:var(--muted);line-height:1.55}.back-card{padding:0 0 65px}
footer{border-top:1px solid var(--line);padding:28px 0 44px;color:var(--muted);font-size:13px}.footer-inner{display:flex;justify-content:space-between;gap:20px}
@media(max-width:980px){.controls.four,.controls.five{grid-template-columns:1fr 1fr}.best-grid{grid-template-columns:1.35fr 1fr 1fr}.best-verdict{justify-self:start;text-align:left}.best-grid>div:nth-child(4){display:none}.card-table-head,.card-row{grid-template-columns:38px minmax(190px,1.6fr) .8fr .8fr .9fr 1fr}.card-table-head>div:nth-child(6),.card-row>.lounge-cell{display:none}.detail{display:none!important}.method-grid{grid-template-columns:1fr 1fr}.site-header nav{gap:14px}}
@media(max-width:680px){.wrap{width:min(100% - 24px,1240px)}.site-header nav{display:none}.hero{padding-top:48px}.hero-copy{font-size:17px}.controls.four,.controls.five{grid-template-columns:1fr}.best-grid{grid-template-columns:1fr 1fr}.best-title{grid-column:1/-1}.best-verdict{grid-column:1/-1}.section-head{display:block}.sort-box{margin-top:14px}.card-table-head,.card-row{grid-template-columns:34px 1.45fr .8fr .8fr;padding-left:12px;padding-right:12px}.card-table-head>div:nth-child(4),.card-row>.keep-cell{display:none}.card-table-head>div:nth-child(5),.card-row>.credit-cell{display:none}.card-table-head>div:nth-child(6),.card-row>.lounge-cell{display:none}.card-table-head>div:nth-child(7){display:none}.card-row>div:nth-child(7){display:block}.method-grid{grid-template-columns:1fr}.lounge-callout{display:block}.lounge-callout .button-link{margin-top:18px}.footer-inner{display:block}.footer-inner>div+div{margin-top:6px}.input-row input{font-size:29px;width:145px}.section-head h2,.method h2{font-size:36px}}

.credit-value{font:800 17px 'Manrope';color:var(--green)}.credit-value span{font-size:10px;color:var(--muted);font-weight:700}.credit-ease{display:inline-block;margin-top:4px;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.credit-ease.easy{background:var(--green-soft);color:var(--green)}.credit-ease.medium{background:var(--amber-soft);color:var(--amber)}.credit-ease.hard{background:var(--red-soft);color:var(--red)}.credit-breakdown{margin-top:13px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px}.credit-break-head{display:flex;justify-content:space-between;gap:14px;align-items:center;padding-bottom:8px;border-bottom:1px solid var(--line);font-size:11px}.credit-break-head span{color:var(--muted)}.credit-break-row{display:grid;grid-template-columns:1.1fr .9fr;gap:8px 16px;padding:10px 0;border-bottom:1px solid var(--line)}.credit-break-row:last-child{border-bottom:0}.credit-break-row strong{font-size:12px}.credit-break-row>div:first-child span{display:block;font-size:10px;color:var(--muted);margin-top:2px}.credit-math{text-align:right;font-size:10px;color:var(--muted)}.credit-math b{display:block;color:var(--green);font-size:12px;margin-top:2px}.credit-break-row p{grid-column:1/-1;margin:0;color:var(--muted);font-size:10px;line-height:1.45}.method-copy{font-size:16px;margin-top:12px;max-width:900px}.credit-control{border-color:#d9cda9;background:#fffdf7}
@media(max-width:980px){.detail-grid.six{grid-template-columns:repeat(3,1fr)}}@media(max-width:680px){.credit-break-head{display:block}.credit-break-head span{display:block;margin-top:4px}.credit-break-row{grid-template-columns:1fr}.credit-math{text-align:left}.credit-break-row p{grid-column:1}.detail-grid.six{grid-template-columns:1fr 1fr}}

/* V4 quick filters */
.filter-panel{margin:0 0 18px;padding:14px 16px;border:1px solid var(--line,#dfe5df);border-radius:16px;background:#fff;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.filter-label{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#66726b;white-space:nowrap}
.filter-chips{display:flex;gap:8px;flex-wrap:wrap;flex:1;min-width:0}
.filter-chip{appearance:none;border:1px solid #d7ded8;background:#f7f9f7;color:#29342e;border-radius:999px;padding:9px 13px;font:700 13px/1 'DM Sans',sans-serif;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}
.filter-chip:hover{border-color:#97aa9d;background:#f0f5f1}
.filter-chip:focus-visible{outline:3px solid rgba(39,122,77,.18);outline-offset:2px}
.filter-chip.active{background:#173f2a;border-color:#173f2a;color:#fff}
.filter-status{font-size:12px;font-weight:700;color:#6a756f;white-space:nowrap}
@media(max-width:760px){.filter-panel{align-items:flex-start}.filter-label,.filter-status{width:100%}.filter-chips{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.filter-chip{flex:0 0 auto}}

/* V5 — transparent Year 1 math */
.signup-req{margin-top:5px;font-size:10px;line-height:1.25;color:#4e6258;font-weight:800}.signup-warning{margin-top:4px;font-size:9px;line-height:1.3;color:var(--red);font-weight:700}.best-signup{margin-top:5px;font-size:9px;line-height:1.25;color:#d1ddd6;font-weight:700}.year1-explainer{margin:0 0 10px;padding:10px 13px;border:1px solid #dbe6dd;background:#f4f8f4;border-radius:11px;font-size:11px;color:#526158}.year1-explainer strong{color:var(--ink)}.year1-breakdown{border:1px solid #cfdcd2;background:#fff;border-radius:14px;padding:14px;margin-bottom:13px}.year1-break-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:10px;border-bottom:1px solid var(--line)}.year1-break-head strong{display:block;font-size:14px;color:var(--ink)}.year1-break-head span{display:block;margin-top:3px;font-size:10px;color:var(--muted)}.year1-total{font:800 22px 'Manrope'}.year1-total.pos{color:var(--green)}.year1-total.mid{color:var(--amber)}.year1-total.neg{color:var(--red)}.year1-lines>div{display:grid;grid-template-columns:1.15fr 1.35fr .55fr;gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.year1-lines>div:last-child{border-bottom:0}.year1-lines span{font-size:11px;font-weight:800;color:var(--ink)}.year1-lines small{font-size:10px;color:var(--muted)}.year1-lines b{text-align:right;font-size:12px;color:var(--green)}.year1-lines>div:last-child b{color:var(--red)}.bonus-requirement{margin-top:10px;padding:9px 11px;background:var(--green-soft);border-radius:9px;font-size:10px;line-height:1.45;color:#355344}.bonus-requirement.not-eligible{background:var(--red-soft);color:#7d3a32}.year1-cell{min-width:0}@media(max-width:680px){.year1-lines>div{grid-template-columns:1fr}.year1-lines b{text-align:left}.year1-break-head{display:block}.year1-total{margin-top:8px}.signup-req{font-size:9px}}

/* V7 brand refresh */
.brand{gap:12px;align-items:center;line-height:1}
.brand-copy{display:flex;flex-direction:column;gap:2px}
.brand-name{font:800 24px 'Manrope';letter-spacing:-.03em;color:var(--ink)}
.brand-dot{color:var(--green);font-weight:800}
.brand-sub{font:700 11px/1.2 'DM Sans',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#6a786f}
.brand-mark{display:grid;place-items:center;width:50px;height:50px;border-radius:16px;background:linear-gradient(145deg,#193224,#0f1814);box-shadow:0 10px 24px rgba(16,28,21,.22), inset 0 1px 0 rgba(255,255,255,.04);overflow:hidden;flex:0 0 auto}
.brand-mark svg{display:block;width:100%;height:100%}
@media(max-width:680px){.brand-name{font-size:20px}.brand-sub{font-size:9px;letter-spacing:.07em}.brand-mark{width:44px;height:44px;border-radius:14px}}


/* V8 premium luxury logo refinement */
.brand-name{font:800 24px 'Manrope';letter-spacing:-.035em;color:var(--ink)}
.brand-sub{font:700 11px/1.2 'DM Sans',sans-serif;letter-spacing:.10em;text-transform:uppercase;color:#7c837a}
.brand-mark{display:grid;place-items:center;width:52px;height:52px;border-radius:17px;background:linear-gradient(145deg,#15251d,#0c1411);box-shadow:0 12px 26px rgba(15,23,18,.28), inset 0 1px 0 rgba(255,255,255,.05);overflow:hidden;border:1px solid rgba(214,183,102,.22)}
@media(max-width:680px){.brand-mark{width:46px;height:46px;border-radius:15px}.brand-sub{font-size:9px;letter-spacing:.08em}}


/* V10 — generated LoungeLife brand artwork */
.brand-image{display:flex;align-items:center;text-decoration:none;min-width:0}
.brand-image img{display:block;width:auto;height:58px;max-width:390px;object-fit:contain;object-position:left center}
.header-inner{height:82px}
@media(max-width:980px){.brand-image img{height:52px;max-width:330px}}
@media(max-width:680px){.header-inner{height:68px}.brand-image img{height:45px;max-width:255px}}
@media(max-width:410px){.brand-image img{height:40px;max-width:225px}}

/* V11 — make the full LoungeLife logo actually readable */
.header-inner{height:112px}
.brand-image{flex:0 0 auto}
.brand-image img{height:88px;width:auto;max-width:570px;object-fit:contain;object-position:left center}
.site-header nav{margin-left:24px;flex:0 0 auto}
@media(max-width:1100px){
  .header-inner{height:100px}
  .brand-image img{height:76px;max-width:485px}
  .site-header nav{gap:16px;margin-left:18px}
  .site-header nav a{font-size:13px}
}
@media(max-width:820px){
  .header-inner{height:90px}
  .brand-image img{height:68px;max-width:430px}
  .site-header nav{display:none}
}
@media(max-width:680px){
  .header-inner{height:82px}
  .brand-image img{height:62px;max-width:min(430px,calc(100vw - 36px))}
}
@media(max-width:410px){
  .header-inner{height:76px}
  .brand-image img{height:56px;max-width:calc(100vw - 28px)}
}


/* V12 — mobile-specific readable brand */
.brand-image picture{display:block;line-height:0}
.brand-image picture img{display:block}
@media(max-width:680px){
  .header-inner{height:112px;justify-content:flex-start}
  .brand-image{width:100%;overflow:visible}
  .brand-image picture{width:100%}
  .brand-image img{width:min(100%,520px);height:auto;max-width:none;object-fit:contain;object-position:left center}
}
@media(max-width:410px){
  .header-inner{height:104px}
  .brand-image img{width:100%;height:auto;max-width:none}
}

/* V13 — desktop logo enlargement */
@media (min-width: 981px){
  .header-inner{height:132px}
  .brand-image img{height:112px;width:auto;max-width:720px;object-fit:contain;object-position:left center}
  .site-header nav{gap:28px;flex:0 0 auto}
  .site-header nav a{font-size:14px}
}
@media (min-width: 681px) and (max-width: 980px){
  .header-inner{height:108px}
  .brand-image img{height:88px;width:auto;max-width:560px;object-fit:contain;object-position:left center}
}
