/* Ivy base layout */
:root{--ink:#0c1c16;--ink-2:#142a21;--panel:#163229;--panel-2:#1b3b30;--paper:#f2ead7;--paper-2:#fffaf0;--coral:#ef765f;--coral-dark:#b94e41;--gold:#d2a85a;--mint:#9fd1b4;--muted:#a9bcaf;--line:#315647;--dark-line:#29483b}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--paper);font:16px/1.65 Arial,Helvetica,sans-serif}
a{color:inherit}
img{display:block;max-width:100%}
.ivy-wrap{width:min(1180px,calc(100% - 44px));margin-inline:auto}
.ivy-header{position:sticky;top:0;z-index:20;background:rgba(12,28,22,.94);border-bottom:1px solid var(--dark-line);backdrop-filter:blur(14px)}
.ivy-header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.ivy-logo{width:152px;display:block}.ivy-logo img{width:152px;height:48px;object-fit:contain;object-position:left center}
.ivy-header nav{display:flex;gap:26px;align-items:center}.ivy-header nav a{color:var(--muted);font-size:.9rem;text-decoration:none}.ivy-header nav a:hover{color:var(--paper)}
.ivy-hero{display:block;max-width:1040px;min-height:0;padding:88px 0 92px}.ivy-hero-copy{max-width:920px;margin:0 auto;text-align:center}.ivy-hero h1{max-width:none;margin:0;color:var(--paper);font-size:clamp(3.2rem,7vw,6.4rem);font-weight:700;line-height:.98;letter-spacing:-.035em}.ivy-hero h1 em{color:var(--mint);font-style:normal}.ivy-lead{max-width:760px;margin:30px auto 0;color:var(--muted);font-size:1.12rem}.ivy-actions{display:flex;justify-content:center;align-items:center;gap:24px;margin-top:32px}.ivy-button{display:inline-flex;align-items:center;gap:12px;padding:14px 20px;border-radius:4px;text-decoration:none;font-weight:800}.ivy-button-coral{background:var(--coral);color:#1c1a16;box-shadow:5px 5px 0 var(--coral-dark)}.ivy-text-link{color:var(--mint);font-weight:700;text-decoration:none;border-bottom:1px solid var(--mint);padding-bottom:2px}.ivy-hero-facts{display:flex;justify-content:center;flex-wrap:wrap;gap:22px;margin-top:42px;color:var(--muted);font-size:.84rem}.ivy-hero-facts span{display:flex;align-items:baseline;gap:6px}.ivy-hero-facts strong{color:var(--gold);font-size:1.25rem}
.ivy-signal-bar{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:92px}.ivy-signal-bar div{display:flex;align-items:center;gap:12px;padding:18px 16px;border-right:1px solid var(--line);color:var(--muted);font-size:.85rem}.ivy-signal-bar div:last-child{border-right:0}.signal-number{color:var(--coral);font-size:1.45rem}
.ivy-section{margin-bottom:96px}.ivy-section-head{display:block;margin-bottom:30px}.ivy-section-head h2,.ivy-split-copy h2{margin:0;color:var(--paper);font-size:clamp(2rem,4vw,3.25rem);font-weight:700;line-height:1.03;letter-spacing:-.035em}.ivy-section-head>div>p{max-width:880px;margin:14px 0 0;color:var(--muted)}
.ivy-rating{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none}.ivy-rating-row{display:flex;flex-direction:column;align-items:stretch;gap:16px;min-width:0;min-height:100%;padding:22px;border:1px solid #d8cfbe;border-top:4px solid var(--gold);border-radius:0 0 14px 14px;background:var(--paper-2);color:var(--ink);transition:transform .2s,box-shadow .2s,border-color .2s}.ivy-rating-row:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 12px 28px #0002}.ivy-rating-featured{border-top-color:var(--coral)}.ivy-brand-copy{display:flex;align-items:center;gap:14px;min-height:78px}.ivy-brand-logo{flex:0 0 72px;width:72px;height:72px;padding:8px;border:1px solid #dce3e1;border-radius:14px;background:#fff;object-fit:contain}.ivy-brand-copy h3{margin:0;font-size:1.25rem;color:var(--ink)}.ivy-brand-copy p{margin:5px 0 0;color:#617168;font-size:.78rem;line-height:1.35}.ivy-card-details{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(90px,.8fr);gap:14px;padding:16px;border-radius:14px;background:#eaf0e4;color:var(--ink)}.ivy-card-details .ivy-license{grid-column:1/-1}.ivy-card-details span{display:block;color:#5a8c80;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.ivy-card-details strong{display:block;margin-top:4px;color:var(--ink);font-size:.92rem;line-height:1.35}.ivy-row-button{display:inline-flex;justify-content:center;align-items:center;gap:7px;width:100%;margin-top:auto;padding:14px 16px;border:0;border-radius:12px;background:var(--ink-2);color:#fff!important;text-decoration:none;font-size:.95rem;font-weight:800}.ivy-row-button:hover{background:var(--coral);color:var(--ink)!important}
.ivy-split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);gap:54px;align-items:center;padding:38px;border:1px solid var(--line);background:var(--panel-2)}.ivy-split-copy h2{max-width:620px}.ivy-split-copy>p{color:var(--muted);max-width:680px}.ivy-check-list{display:grid;gap:18px;margin:34px 0 0;padding:0;list-style:none}.ivy-check-list li{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:start}.ivy-check-list li>span{color:var(--coral);font-size:1.35rem}.ivy-check-list strong{display:block}.ivy-check-list p{margin:2px 0 0;color:var(--muted);font-size:.9rem}.ivy-image-card{margin:0;border-radius:4px 28px 4px 28px;overflow:hidden;border:1px solid var(--gold);background:#0a1913}.ivy-image-card img{width:100%;height:430px;object-fit:cover}
.ivy-table-section,.ivy-question-panel{padding-top:10px}.ivy-table-wrap{overflow-x:auto;border:1px solid var(--line)}table{width:100%;min-width:680px;border-collapse:collapse;background:var(--paper-2);color:var(--ink)}th,td{padding:15px 18px;text-align:left;vertical-align:top;border-bottom:1px solid #d8cfbe}th{background:var(--coral);color:#221d19;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}td{font-size:.9rem}tbody tr:nth-child(even) td{background:#f7f0e3}tbody tr:last-child td{border-bottom:0}.ivy-table-note{margin:16px 0 0;max-width:900px;color:var(--muted);font-size:.9rem}.ivy-dark-panel{padding:48px;background:#08140f;border:1px solid var(--line)}.ivy-question-panel{padding:38px;background:var(--paper);color:var(--ink);border-radius:4px}.ivy-question-panel .ivy-section-head h2{color:var(--ink)}.ivy-question-panel .ivy-section-head>div>p,.ivy-question-panel .ivy-table-note{color:#5b6b62}
.ivy-faq{padding-bottom:32px}.ivy-faq-list{border-top:1px solid var(--line)}.ivy-faq details{border-bottom:1px solid var(--line)}.ivy-faq summary{padding:20px 0;color:var(--paper);cursor:pointer;font-size:1.25rem;font-weight:700}.ivy-faq details p{max-width:760px;margin:0 0 20px;color:var(--muted)}
.ivy-footer{padding:58px 0 18px;background:#07110d;border-top:1px solid var(--line);color:var(--muted)}.ivy-footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:34px}.ivy-footer-logo{width:154px;height:48px;object-fit:contain;object-position:left center;margin-bottom:14px}.ivy-footer h3{margin:0 0 12px;color:var(--paper);font-size:.9rem}.ivy-footer p{max-width:300px;margin:6px 0;font-size:.85rem;line-height:1.6}.ivy-footer-grid>div>a{display:block;width:max-content;margin:6px 0;color:var(--mint);font-size:.88rem;text-decoration:none}.ivy-footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:42px;padding-top:20px;border-top:1px solid var(--dark-line);font-size:.8rem}.ivy-support{margin-top:34px;text-align:center}.ivy-support h3{font-size:1rem}.ivy-support>div{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.ivy-support a{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:150px;padding:10px;color:var(--mint);text-decoration:none;font-size:.8rem}.ivy-org-logo{display:flex;align-items:center;justify-content:center;width:154px;height:74px;padding:10px;border-radius:10px;background:#fff}.ivy-org-logo img{width:auto;height:auto;max-width:100%;max-height:54px;object-fit:contain}
.ivy-catfish{position:fixed;z-index:30;left:50%;bottom:16px;transform:translateX(-50%);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;width:min(690px,calc(100% - 28px));padding:14px 16px;background:#123027;border:1px solid var(--gold);box-shadow:0 18px 42px #0008}.ivy-catfish button{position:absolute;top:-12px;right:-8px;width:28px;height:28px;border:0;border-radius:50%;background:#07110d;color:var(--paper);font-size:18px;cursor:pointer}.ivy-catfish small{display:block;color:var(--mint);font-size:.7rem}.ivy-catfish span{display:block;color:var(--paper);font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ivy-catfish>a{padding:11px 16px;background:var(--coral);color:#201915;text-decoration:none;font-weight:800;white-space:nowrap}
.ivy-cookie{position:fixed;z-index:40;right:16px;bottom:16px;display:none;width:min(490px,calc(100% - 32px));padding:18px;background:#0d1e17;border:1px solid var(--line);color:var(--paper);box-shadow:0 18px 50px #0008}.ivy-cookie[data-open="true"]{display:block}.ivy-cookie h2{margin:0 0 6px;font-size:1.3rem}.ivy-cookie p{margin:0 0 12px;color:var(--muted);font-size:.85rem}.ivy-cookie-settings{display:none;gap:8px;margin:12px 0;font-size:.82rem}.ivy-cookie-settings[data-open="true"]{display:grid}.ivy-cookie-actions{display:flex;flex-wrap:wrap;gap:8px}.ivy-cookie-actions button{min-height:40px;padding:8px 12px;border:1px solid var(--line);background:var(--panel);color:var(--paper);font:inherit;font-weight:700;cursor:pointer}.ivy-cookie-actions .primary{background:var(--mint);border-color:var(--mint);color:var(--ink)}.ivy-cookie-reopen{position:fixed;z-index:35;left:12px;bottom:12px;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:#0d1e17;color:var(--paper);cursor:pointer}
@media(max-width:980px){.ivy-rating{grid-template-columns:repeat(2,minmax(0,1fr))}.ivy-split{grid-template-columns:1fr}.ivy-image-card img{height:340px}}
@media(max-width:700px){.ivy-wrap{width:calc(100% - 28px)}.ivy-header-inner{min-height:70px}.ivy-header nav{gap:12px}.ivy-header nav a{font-size:.78rem}.ivy-hero{padding-top:54px;padding-bottom:66px}.ivy-lead{font-size:1rem}.ivy-signal-bar{grid-template-columns:1fr 1fr;margin-bottom:62px}.ivy-signal-bar div:nth-child(2){border-right:0}.ivy-signal-bar div:nth-child(-n+2){border-bottom:1px solid var(--line)}.ivy-rating{grid-template-columns:1fr}.ivy-card-details{grid-template-columns:1fr}.ivy-card-details .ivy-license{grid-column:auto}.ivy-split,.ivy-dark-panel,.ivy-question-panel{padding:24px}.ivy-footer-grid{grid-template-columns:1fr 1fr;gap:28px}.ivy-footer-bottom{display:block}.ivy-footer-bottom span{display:block;margin-top:6px}.ivy-catfish{grid-template-columns:1fr}.ivy-catfish>a{text-align:center}.ivy-catfish span{white-space:normal}}
@media(max-width:460px){.ivy-header-inner{align-items:flex-start;flex-direction:column;padding:12px 0}.ivy-logo{width:132px}.ivy-logo img{width:132px}.ivy-actions{align-items:flex-start;flex-direction:column;gap:18px}.ivy-hero-facts{gap:12px;flex-direction:column}.ivy-footer-grid{grid-template-columns:1fr}.ivy-support>div{display:grid;grid-template-columns:1fr 1fr}.ivy-support a{text-align:center}}

/* Final Ivy pass: plain type, archive-style rating cards and restored support logos. */
.ivy-kicker{display:none!important}
.ivy-hero{display:block;max-width:1040px;min-height:0;padding-top:88px;padding-bottom:92px}
.ivy-hero-copy{max-width:920px;margin:0 auto;padding-left:0;text-align:center}
.ivy-hero h1,.ivy-section-head h2,.ivy-split-copy h2,.ivy-faq summary,.ivy-cookie h2{font-family:Arial,Helvetica,sans-serif;font-weight:700;letter-spacing:-.035em}
.signal-number,.ivy-check-list li>span,.ivy-rank,.ivy-hero-label span:first-child{font-family:Arial,Helvetica,sans-serif}
.ivy-hero h1{max-width:none;font-size:clamp(3.2rem,7vw,6.4rem);line-height:.98}
.ivy-lead{max-width:760px;margin:30px auto 0}
.ivy-actions,.ivy-hero-facts{justify-content:center}
.ivy-section-head,.ivy-section-head.compact{display:block}
.ivy-section-head h2{font-size:clamp(2rem,4vw,3.25rem)}
.ivy-section-head>div>p{max-width:880px!important;margin-top:14px!important}
.ivy-rating{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ivy-rating-row,.ivy-rating-featured{display:flex;flex-direction:column;align-items:stretch;gap:16px;min-width:0;min-height:100%;padding:22px!important;border:1px solid #d8cfbe;border-top:4px solid var(--gold);border-radius:0 0 14px 14px;background:var(--paper-2);color:var(--ink);transition:transform .2s,box-shadow .2s,border-color .2s}
.ivy-rating-row:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 12px 28px #0002}
.ivy-rating-featured{border-top-color:var(--coral);background:var(--paper-2)}
.ivy-brand-copy{display:flex;align-items:center;gap:14px;min-height:78px}
.ivy-brand-logo{flex:0 0 72px;width:72px;height:72px;padding:8px;border:1px solid #dce3e1;border-radius:14px;background:#fff;object-fit:contain}
.ivy-brand-copy h3{font-size:1.25rem;color:var(--ink)}
.ivy-brand-copy p,.ivy-rating-featured .ivy-brand-copy p{margin-top:5px;color:#617168}
.ivy-card-details{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(90px,.8fr);gap:14px;padding:16px;border-radius:14px;background:#eaf0e4;color:var(--ink)}
.ivy-card-details .ivy-license{grid-column:1/-1}
.ivy-card-details .ivy-offer span,.ivy-card-details .ivy-entry span,.ivy-card-details .ivy-license span{color:#5a8c80}
.ivy-card-details .ivy-offer strong,.ivy-card-details .ivy-entry strong,.ivy-card-details .ivy-license strong{font-size:.92rem;color:var(--ink)}
.ivy-row-button,.ivy-rating-featured .ivy-row-button{width:100%;margin-top:auto;padding:14px 16px;border:0;border-radius:12px;background:var(--ink-2);color:#fff!important;font-size:.95rem}
.ivy-row-button:hover{background:var(--coral);color:var(--ink)!important}
.ivy-split-copy h2{font-size:clamp(2.2rem,4vw,3.8rem)}
.ivy-split-copy>p:not(.ivy-kicker){max-width:680px}
.ivy-support a{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:150px;padding:10px;border:0;color:var(--mint)}
.ivy-org-logo{display:flex;align-items:center;justify-content:center;width:154px;height:74px;padding:10px;border-radius:10px;background:#fff}
.ivy-org-logo img{width:auto;height:auto;max-width:100%;max-height:54px;object-fit:contain}
.ivy-footer{padding-bottom:18px}
@media(max-width:980px){.ivy-rating{grid-template-columns:repeat(2,minmax(0,1fr))}.ivy-rating-row,.ivy-rating-featured{display:flex}.ivy-license{grid-column:auto}.ivy-row-button{grid-column:auto;grid-row:auto}}
@media(max-width:700px){.ivy-hero{padding-top:54px;padding-bottom:66px}.ivy-rating{grid-template-columns:1fr}.ivy-rating-row,.ivy-rating-featured{padding:18px!important}.ivy-brand-copy{grid-column:auto}.ivy-card-details{grid-template-columns:1fr}.ivy-card-details .ivy-license{grid-column:auto}.ivy-hero-facts{align-items:center}.ivy-split-copy>p:not(.ivy-kicker){max-width:none}}
