@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500;600;700;800&family=Open+Sans:wght@400;500;600;700&display=swap');
:root{color-scheme:light;--red:#d52447;--text:#38232f;--muted:#806d77;--line:#ecdde2;font-family:'Open Sans',sans-serif;font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:#fff4f5;color:var(--text);line-height:1.6}a{color:inherit;text-decoration:none}a:hover{color:var(--red)}a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #c62e69;outline-offset:4px}.wrap{width:calc(100% - 64px);max-width:1160px;margin-inline:auto}header{background:#371c29;color:#fff}.header-inner{min-height:70px;display:flex;align-items:center;gap:24px}.wordmark{display:flex;align-items:center;gap:9px;font-family:Montserrat,sans-serif;font-weight:800;font-size:1.35rem;letter-spacing:-.8px;line-height:1.15}.wordmark-accent{color:#ff6d91}.mark{font-size:42px;color:#ff6d91;font-weight:500}.header-inner nav{margin-left:auto;display:flex;gap:30px;font-size:.875rem;font-weight:700}.adult{font-size:.75rem;border:1px solid #916e7e;border-radius:4px;padding:2px 6px}.hero{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(105deg,#c2264d,#f05d69);color:#fff}.hero-visual{position:absolute;inset:0 0 0 44%;z-index:-1}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:50% 38%}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#e14960 0,transparent 38%),linear-gradient(0deg,#b7204533,transparent 50%)}.hero-inner{position:relative;padding-top:24px;padding-bottom:78px}.eyebrow{font-size:.75rem;letter-spacing:1.7px;font-weight:700;color:var(--red);margin:0 0 12px}.hero .eyebrow{color:#ffe4e8;margin-bottom:9px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-family:Montserrat,sans-serif}h1{font-size:clamp(2.5rem,4.1vw,3.6rem);font-weight:800;line-height:1.08;letter-spacing:-1.2px;margin-bottom:12px}h1 span{color:#ffe6e9}.hero-inner>p:not(.eyebrow){max-width:410px;font-size:1rem;margin-bottom:0;line-height:1.5}.image-note{position:absolute;right:0;bottom:70px;font-size:.625rem;background:#371c2999;color:#fff;padding:2px 6px;border-radius:3px}.quick-section{position:relative;margin-top:-51px;padding:17px 24px 20px;background:#ffedf0;border-radius:18px;box-shadow:0 8px 25px #63304412}.quick-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:12px}.quick-heading h2{font-size:1rem;font-weight:800;margin:0}.quick-heading>span{font-size:.8125rem;color:#965367}.quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.quick-card{background:#fff;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:16px;padding:14px 18px;border-radius:13px;box-shadow:0 5px 20px #63233c0c}.provider-logo{display:block;width:100%;height:65px;object-fit:contain}.provider-name{font-family:Montserrat;font-size:1.5rem;font-weight:800}.quick-card .provider-logo{height:44px}.quick-action{text-align:center}.quick-action>span{display:block;font-size:.75rem;color:#684451;font-weight:600;margin-bottom:5px}.button{display:block;background:var(--red);border-radius:7px;padding:12px 18px;text-align:center;color:#fff;font-weight:800;font-size:.9375rem;box-shadow:0 5px 12px #ad16341a;transition:background .15s,transform .15s}.button:hover{background:#b91838;color:white;transform:translateY(-1px)}.button-small{font-size:.75rem;padding:5px 10px;white-space:nowrap}.listing-meta{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:15px 18px;font-size:.75rem;color:#826471}.listing-meta>a{text-decoration:underline;text-underline-offset:3px}.meta-divider{margin:0 8px;color:#ca9cac}.listing{position:relative;margin:0 0 24px;background:#fff;border-radius:17px;border:1px solid #ead9df;box-shadow:0 8px 20px #7e234107}.lead-listing{border:2px solid #ef5674;background:#fffafb}.card-ribbon{display:inline-block;position:relative;top:-12px;left:22px;margin-bottom:-12px;border-radius:30px;background:#b34470;color:#fff;padding:3px 16px;font-size:.75rem;letter-spacing:.25px;box-shadow:0 4px 9px #68233a0c}.listing:not(.lead-listing) .card-ribbon{background:#f4e4eb;color:#96506c}.listing-main{display:grid;grid-template-columns:200px minmax(0,1fr) 128px 210px;align-items:center;gap:24px;padding:16px 24px 19px}.brand-panel{text-align:center}.brand-panel .provider-logo{height:83px}.review-link{display:inline-block;font-size:.75rem;color:#926779;margin-top:12px;text-decoration:underline;text-underline-offset:3px}.listing-copy h3{font-size:.9375rem;line-height:1.6;font-weight:700;margin-bottom:10px}.highlights{list-style:none;padding:0;margin:0;font-size:.875rem;color:#715563;display:grid;gap:5px}.highlights li{padding-left:21px;position:relative}.highlights li:before{content:'✓';position:absolute;left:0;color:#e04267;font-weight:800}.fit-panel{display:flex;flex-direction:column;align-items:center;text-align:center}.fit-icon{width:56px;height:56px;border:2px solid #f17891;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#e4486c;font-size:36px;line-height:1;margin-bottom:6px}.fit-panel strong{font-size:.8125rem;color:#ba3258}.fit-panel>span:last-child{font-size:.625rem;color:#957683}.listing-action{text-align:center}.listing-action>span{display:block;font-size:.75rem;color:#916272;margin-bottom:9px}.listing-action small{display:block;font-size:.75rem;color:#9b7e8b;margin-top:6px}.review{border-top:1px solid #f0e0e5}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.review summary{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;color:#8d6678;padding:8px 24px}.expand{font-size:1.1rem;color:var(--red)}.review[open] .expand{transform:rotate(45deg)}.review-body{padding:20px 26px;border-top:1px solid var(--line);color:#735967;font-size:1rem}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.review-grid h4{margin:8px 0;font-size:.9375rem}.review-grid ul{padding-left:20px;font-size:.875rem}.source{color:var(--red);font-size:.875rem;text-decoration:underline}.ranking-note{color:#927582;font-size:.75rem;margin:12px 0 0;line-height:1.7}.editorial-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:70px;margin-top:62px}.editorial-main h2,.section-heading h2{font-size:2rem;line-height:1.3;font-weight:800;letter-spacing:-.6px;margin-bottom:22px}.editorial-main>p:not(.eyebrow){color:#79616d;font-size:1rem;line-height:1.9}.guide-points{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:26px}.guide-points article{border-top:2px solid #eaa3b7;padding-top:13px}.guide-points article>span{font-size:.75rem;color:var(--red);font-weight:700}.guide-points h3{font-size:.875rem;margin:8px 0}.guide-points p{font-size:.8125rem;color:#836574;margin:0;line-height:1.7}.sidebar{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px;height:fit-content;box-shadow:0 5px 20px #7e234105}.sidebar h3{font-size:.875rem;margin:0 0 8px}.sidebar>p{font-size:.8125rem;color:#8e7380;margin-bottom:12px}.side-pick{display:flex;gap:16px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}.side-pick>div{flex:1}.side-number{font-family:Montserrat;font-weight:800;font-size:1.3rem;color:#df9fb3}.side-pick .provider-logo{height:37px;max-width:155px}.side-link{display:block;margin-top:9px;font-size:.75rem;text-transform:uppercase;font-weight:700;color:var(--red);text-align:center}.aside-note{display:block;font-size:.75rem;color:#967b88;margin-top:18px}.section{margin-top:58px}.section-heading .eyebrow{margin-bottom:8px}.section-heading h2{margin-bottom:24px}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:#fff}table{width:100%;min-width:650px;border-collapse:collapse;text-align:left;font-size:.875rem}th,td{padding:17px 22px;border-bottom:1px solid var(--line)}thead th{background:#f9e6ed;font-weight:700}tbody th{font-weight:400;color:#8b6c7a}td{color:#644657}tr:last-child>*{border-bottom:0}.featured-section .listing{margin-top:30px}.faq{max-width:900px}.faq details{border:1px solid var(--line);border-radius:9px;background:#fff;margin-bottom:10px}.faq summary{position:relative;font-size:1rem;font-weight:600;padding:18px 50px 18px 22px}.faq summary:after{content:'+';position:absolute;right:23px;top:13px;color:var(--red);font-size:24px}.faq details[open] summary:after{content:'−'}.faq details p{padding:0 22px 18px;color:#806471;font-size:.9375rem;margin:0}.disclosure{margin-top:50px;margin-bottom:42px;background:#f6e5eb;border-radius:12px;padding:24px 28px;font-size:.8125rem;color:#8a6475}.disclosure h2{font-size:.875rem;margin-bottom:10px}.disclosure p:last-child{margin-bottom:0}footer{background:#371c29;color:#dbc1cf}.footer-inner{padding-block:30px;display:flex;flex-wrap:wrap;align-items:center;gap:26px}.footer-inner .wordmark{color:white}.footer-inner nav{margin-left:auto;display:flex;gap:22px;font-size:.75rem}.footer-inner p{width:100%;border-top:1px solid #694354;padding-top:20px;margin:0;font-size:.75rem}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip:focus{position:fixed;top:10px;left:10px;background:#fff;padding:10px;z-index:10}
@media(max-width:1050px){.wrap{width:calc(100% - 40px)}.listing-main{grid-template-columns:160px minmax(0,1fr) 100px 170px;gap:17px;padding:15px 20px}.quick-card{padding:12px;gap:10px}.quick-grid{gap:12px}.editorial-layout{gap:35px;grid-template-columns:minmax(0,1fr) 250px}.hero-visual{left:40%}}
@media(max-width:760px){.wrap{width:calc(100% - 28px)}.header-inner{min-height:57px;gap:10px}.wordmark{font-size:1.06rem;letter-spacing:-.6px;gap:5px}.mark{font-size:31px}.header-inner nav{font-size:.6875rem;gap:14px}.header-inner nav a:last-child,.adult{display:none}.hero-inner{padding-top:22px;padding-bottom:54px}.hero-visual{left:38%}.hero-visual:after{background:linear-gradient(90deg,#df465e,transparent 65%),linear-gradient(0deg,#d6365966,transparent)}h1{font-size:2.1rem;line-height:1.12;letter-spacing:-1px;max-width:270px}.hero .eyebrow{font-size:.625rem;letter-spacing:1px}.hero-inner>p:not(.eyebrow){font-size:.8125rem;max-width:220px}.image-note{bottom:44px;font-size:.5625rem}.quick-section{margin-top:-28px;padding:14px;border-radius:13px}.quick-heading{margin-bottom:12px}.quick-heading h2{font-size:.8125rem;line-height:1.5}.quick-heading>span{display:none}.quick-grid{grid-template-columns:1fr;gap:9px}.quick-card{grid-template-columns:1fr 1fr;padding:10px 16px;gap:25px}.quick-card .provider-logo{height:38px}.quick-action>span{font-size:.75rem;margin-bottom:3px}.button-small{font-size:.75rem;padding:5px 10px}.listing-meta{padding-block:16px 23px;font-size:.625rem}.meta-divider{margin:0 4px}.listing{margin-bottom:25px;border-radius:13px}.card-ribbon{left:15px;font-size:.6875rem;padding:3px 12px}.listing-main{grid-template-columns:1fr 1.15fr;gap:16px;padding:8px 16px 16px}.brand-panel{grid-column:1;grid-row:1}.brand-panel .provider-logo{height:57px}.review-link{margin-top:5px;font-size:.75rem}.listing-action{grid-column:2;grid-row:1}.listing-action>span{font-size:.625rem;margin-bottom:6px}.button{padding:10px 12px;font-size:.875rem}.button-small{padding:5px 10px;font-size:.75rem}.listing-action small{font-size:.625rem;margin-top:4px}.listing-copy{grid-column:1/-1;grid-row:2;border-top:1px solid var(--line);padding-top:12px}.listing-copy h3{font-size:.9375rem;margin-bottom:8px}.highlights{font-size:.875rem}.fit-panel{display:none}.review summary{padding:8px 16px}.review-body{padding:18px}.review-grid{grid-template-columns:1fr;gap:10px}.editorial-layout{display:block;margin-top:38px}.editorial-main h2,.section-heading h2{font-size:1.65rem;letter-spacing:-.4px}.guide-points{grid-template-columns:1fr;gap:16px}.guide-points article{display:grid;grid-template-columns:26px 1fr;gap:0 10px}.guide-points h3{margin:0 0 5px}.guide-points p{grid-column:2}.sidebar{margin-top:28px}.side-pick{display:inline-flex;width:32%;border:0;vertical-align:top;padding:12px 5px;gap:5px}.side-number{display:none}.side-pick .provider-logo{height:30px}.aside-note{border-top:1px solid var(--line);padding-top:13px}.section{margin-top:38px}.faq summary{font-size:.9375rem;padding:16px 42px 16px 16px}.faq details p{padding:0 16px 16px}.disclosure{padding:20px;margin-top:35px;margin-bottom:30px}.footer-inner{gap:18px}.footer-inner nav{width:100%;flex-wrap:wrap;margin:0;gap:16px}th,td{padding:14px 17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
