.catalogue{--reward-size:1.25rem;--reward-line-height:1.35;--reward-weight:700;--reward-label-size:1rem;font-family:Arial,sans-serif;background:#f7fafb}.catalogue h1,.catalogue h2,.catalogue h3{font-family:Arial,sans-serif}.catalogue .site-header{max-width:1280px;height:80px}.catalogue .site-header nav a[aria-current]{color:#087f5b}.catalogue-intro,.directory,.checks-panel,.catalogue-guides,.detail-shell{max-width:1224px;margin:auto}.catalogue-intro{padding:36px 28px 26px;display:flex;align-items:end;justify-content:space-between;gap:24px}.catalogue .kicker{color:#087f5b;font-size:.875rem;letter-spacing:.1em;margin:0 0 12px}.catalogue h1{font-size:clamp(2.3rem,5vw,3.7rem);line-height:1.1;letter-spacing:-.045em;color:#102a43;margin:0 0 12px}.catalogue h1 span{color:#087f5b}.catalogue-intro p:not(.kicker){color:#536571;margin:0;font-size:1.05rem}.text-link{color:#102a43;text-decoration:none;font-weight:700;font-size:.95rem;white-space:nowrap}.directory{padding:0 28px 32px}.search-row{display:flex;gap:20px;align-items:center}.search-box{display:flex;align-items:center;flex:1;background:white;border:1px solid #c7d5dc;border-radius:9px;min-width:0;padding:0 16px;gap:12px}.search-box>span[aria-hidden]{font-size:2rem;color:#536571}.search-box input{width:100%;height:58px;border:0;background:none;color:#17222d;min-width:0;font-size:1rem}.sort-label{display:flex;align-items:center;gap:10px;color:#536571;font-size:.875rem}.sort-label select{font:inherit;color:#102a43;background:white;border:1px solid #c7d5dc;border-radius:8px;padding:16px 12px;max-width:240px}.catalogue .filters{margin:20px 0 16px;gap:8px}.catalogue .filter{font-size:.875rem;padding:10px 18px}.results-bar{display:flex;gap:22px;align-items:center;flex-wrap:wrap;font-size:.875rem}.results-bar p{margin:0 auto 0 0;font-weight:700;color:#102a43}.checked-toggle{display:flex;align-items:center;gap:8px}.checked-toggle input{width:18px;height:18px;accent-color:#087f5b}.text-button{background:none;border:0;color:#087f5b;font-weight:700;cursor:pointer;padding:10px 0}.directory-note{font-size:.875rem;color:#536571;line-height:1.6;margin:12px 0 22px}.directory-note a{color:#087f5b}.catalogue .offer-grid{gap:20px}.catalogue .offer-card{padding:23px;min-height:370px}.catalogue .offer-card[hidden]{display:none}.brand-heading{display:flex;align-items:center;gap:12px;min-width:0}.catalogue .offer-top{gap:8px;align-items:start}.catalogue .offer-logo{flex:0 0 44px;width:44px;height:44px;border:1px solid #e2e9ed;background:#f8fafb;font-family:Arial,sans-serif}.brand-heading h2{font-size:1.05rem;letter-spacing:-.02em;color:#102a43;margin:0 0 4px;overflow-wrap:anywhere}.catalogue .offer-category{font-size:.875rem;letter-spacing:0;text-transform:none;color:#617180}.kind{font-size:.75rem;background:#edf3f6;color:#365469;padding:5px 7px;border-radius:5px;white-space:nowrap}.catalogue .offer-card .offer-reward,.catalogue .claim-panel .offer-reward{font-family:inherit;font-size:var(--reward-size);font-weight:var(--reward-weight);line-height:var(--reward-line-height);font-variant-numeric:lining-nums tabular-nums;color:#087f5b;margin:20px 0 12px;letter-spacing:normal;overflow-wrap:anywhere}.catalogue .offer-card .offer-summary{font-size:1rem;line-height:1.5;margin-bottom:16px}.catalogue .offer-card .condition{font-size:.875rem;line-height:1.5;padding-left:12px;border-left:3px solid #d4e5df;color:#40515e;margin:0 0 20px}.catalogue .offer-meta{font-size:.8125rem;margin-top:auto}.catalogue .offer-meta span{padding:0;background:none}.catalogue .offer-card .details-link{display:flex;background:#102a43;color:white;padding:13px 16px;border:0;border-radius:7px;font-size:.9375rem;margin-top:15px}.catalogue .offer-card .details-link:hover{background:#175c58}.checks-panel{padding:30px 28px;border-top:1px solid #dce6e9;border-bottom:1px solid #dce6e9}.checks-panel h2{font-size:1.3rem;color:#102a43;margin:0 0 12px}.checks-panel p{font-size:1rem;line-height:1.7;color:#536571;max-width:900px}.checks-panel a{color:#087f5b;font-weight:700}.catalogue-guides{padding:55px 28px 70px}.catalogue-guides .section-heading h2{font-size:2rem}.catalogue-guides .guide-grid{margin-top:24px}.catalogue-guides .guide-grid article{padding:0 0 24px;overflow:hidden}.catalogue-guides img{width:100%;height:170px;object-fit:cover}.catalogue-guides h3,.catalogue-guides article p,.catalogue-guides article a{margin-left:24px;margin-right:24px}.catalogue-guides article p{font-size:1rem}.catalogue-guides article a{font-size:.9375rem}.catalogue footer{padding-top:42px}.catalogue .disclosure p,.catalogue .footer-bottom{font-size:.875rem}.catalogue .disclosure{margin-top:26px}.detail-shell{padding:28px 28px 70px}.back-link{display:inline-block;color:#087f5b;margin:0 0 34px;text-decoration:none;font-weight:700}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:64px}.detail-layout article>h1{margin:22px 0 16px}.detail-summary{font-size:1.2rem;color:#536571;line-height:1.6}.source-status{font-size:.875rem;color:#536571}.detail-layout h2{font-size:1.5rem;color:#102a43;margin-top:32px}.detail-layout p,.steps{line-height:1.7}.detail-layout a:not(.provider-link){color:#087f5b}.conditions{margin:0}.conditions>div{padding:16px 0;display:grid;grid-template-columns:150px 1fr;gap:20px;border-bottom:1px solid #dce6e9}.conditions dt{font-weight:700;color:#102a43}.conditions dd{margin:0;line-height:1.5;color:#40515e}.claim-panel{align-self:start;background:#fff;border:1px solid #dce6e9;border-top:4px solid #087f5b;padding:28px;border-radius:12px;position:sticky;top:24px}.claim-panel dd{margin:8px 0 24px;color:#536571;line-height:1.5}.claim-panel dt{font-weight:700}.provider-link{display:block;background:#102a43;color:white;text-align:center;border-radius:7px;padding:15px 12px;font-weight:700;text-decoration:none}.claim-panel .link-disclosure{font-size:.875rem;color:#536571}.guide-link{font-size:.875rem}.steps{padding-left:22px}.steps li{padding-left:5px;margin-bottom:12px}.related{margin-top:48px;border-top:1px solid #dce6e9;padding-top:24px}.related>h2{color:#102a43}.catalogue .empty-state{border:1px dashed #c7d5dc;border-radius:10px;background:white}.reset-button{padding:12px 20px;background:#102a43;color:white;border:0;border-radius:6px;font:inherit;cursor:pointer}:focus-visible{outline:3px solid #087f5b;outline-offset:4px}.search-box:focus-within{outline:3px solid #087f5b;outline-offset:2px}.search-box input:focus-visible{outline:none}.catalogue .offer-card:hover{transform:translateY(-2px)}
@media(max-width:1050px){.catalogue .offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-layout{gap:30px;grid-template-columns:minmax(0,1fr) 300px}.offer-top{flex-wrap:wrap}}
@media(max-width:700px){.catalogue .site-header{height:68px;padding:0 20px}.catalogue-intro{padding:26px 20px 22px;display:block}.text-link{display:inline-block;margin-top:16px;white-space:normal}.directory{padding:0 20px 26px}.search-row{display:block}.sort-label{margin-top:12px;justify-content:space-between}.sort-label select{flex:1;max-width:240px}.catalogue .filters{gap:7px}.catalogue .filter{padding:9px 13px}.results-bar{gap:12px}.results-bar p{flex-basis:100%}.catalogue .offer-grid{grid-template-columns:1fr}.catalogue .offer-card{min-height:0}.catalogue .offer-meta{margin-top:0}.catalogue .offer-top{flex-wrap:nowrap}.checks-panel{margin:0 20px;padding:24px 0}.catalogue-guides{padding:36px 20px 50px}.catalogue-guides .guide-grid{grid-template-columns:1fr}.catalogue .guide-grid img{height:auto;aspect-ratio:3/2}.detail-shell{padding:24px 20px 45px}.detail-layout{display:flex;flex-direction:column;gap:24px}.claim-panel{position:static;width:100%}.conditions>div{grid-template-columns:1fr;gap:6px}.catalogue .brand{font-size:1rem}.catalogue .site-header nav{top:68px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* One reward scale across catalogue, related cards and offer detail panels. */
.catalogue .offer-card .offer-reward{min-height:2.7em}
.catalogue .offer-reward :is(strong,b,span){font-size:inherit;line-height:inherit;font-weight:inherit}
.catalogue :is(.conditions,.claim-panel dl){font-size:var(--reward-label-size);line-height:1.5;font-variant-numeric:lining-nums tabular-nums}
.catalogue :is(.conditions dd,.claim-panel dd){overflow-wrap:anywhere}
.catalogue .offer-card{min-width:0}
.catalogue .offer-card .brand-heading{min-height:3rem}

/* Keep both sides of a reward visible before opening the offer. */
.catalogue .reward-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 18px;font-size:.875rem;line-height:1.5;font-variant-numeric:lining-nums tabular-nums}
.catalogue .reward-split>div{min-width:0;padding:12px;border-radius:7px;background:#edf8f5;border:1px solid #cfe6de}
.catalogue .reward-split>div+div{background:#f2f5f7;border-color:#dce6e9}
.catalogue .reward-split dt{font-size:.875rem;font-weight:700;color:#102a43}
.catalogue .reward-split dt span{display:block;font-size:.75rem;font-weight:400;color:#536571}
.catalogue .reward-split dd{font-size:.875rem;line-height:1.5;font-weight:600;color:#087f5b;margin:6px 0 0;overflow-wrap:anywhere}
.catalogue .reward-split>div+div dd{color:#40515e}
.catalogue .claim-panel .reward-split{grid-template-columns:1fr}
@media(max-width:380px){.catalogue .reward-split{grid-template-columns:1fr}}


/* Playful catalogue styling; reward typography remains on the shared scale. */
.catalogue{background:#fcfbf7}
.catalogue-intro{position:relative;isolation:isolate;min-height:265px;padding-top:48px;padding-bottom:42px;align-items:center;overflow:hidden}
.catalogue-intro>div{max-width:760px;position:relative;z-index:1}
.catalogue-intro:after{content:"";position:absolute;z-index:-1;right:5px;top:0;width:300px;height:235px;background:url("/assets/blog/uk-referral-roundup.webp") center/cover no-repeat;border-radius:28px;transform:rotate(3deg);opacity:.95;pointer-events:none}
.catalogue-intro>.text-link{position:relative;align-self:end;background:#fff;padding:12px 16px;border:1px solid #dce6e9;border-radius:30px}
.catalogue .offer-card{background:#fff;border:1px solid #d7dedb;border-top:6px solid #88dabb;border-radius:19px;box-shadow:0 5px 0 #e5ece7}
.catalogue .offer-card:nth-child(4n+2){border-top-color:#bda7f1}
.catalogue .offer-card:nth-child(4n+3){border-top-color:#f4b08f}
.catalogue .offer-card:nth-child(4n){border-top-color:#edce77}
.catalogue .offer-logo{width:54px;height:54px;flex-basis:54px;border-radius:16px;background:#fff;box-shadow:3px 3px 0 #ede7ff}
.catalogue .kind{background:#ede7ff;color:#4a3474;border-radius:20px;padding:6px 10px}
.catalogue .offer-card .details-link{border-radius:11px}
.catalogue .reward-split>div{border-radius:11px}
.catalogue .reward-split>div+div{background:#f3effc;border-color:#e1d9f1}
.catalogue .filter{background:#fff;border-color:#d9dfdc;border-radius:30px}
.catalogue .filter.active{background:#102a43;color:#fff;border-color:#102a43}
.catalogue .search-box{border-radius:15px;box-shadow:0 4px 0 #e7ece8}
.catalogue .checks-panel{background:#f0ecfa;border:0;border-radius:20px}
@media(hover:hover) and (pointer:fine){.catalogue .offer-card:hover{transform:translateY(-7px);box-shadow:0 18px 35px #102a4324}.catalogue .offer-card .details-link:hover{background:#175c58}}
@media(max-width:1050px){.catalogue-intro>div{max-width:70%}.catalogue-intro:after{width:240px;right:-20px}}
@media(max-width:700px){.catalogue-intro{padding-top:30px;min-height:0}.catalogue-intro>div{max-width:100%}.catalogue-intro:after{display:none}.catalogue-intro>.text-link{margin-top:20px}.catalogue .checks-panel{padding:24px 20px}}
@media(prefers-reduced-motion:reduce){.catalogue .offer-card:hover{transform:none!important}}

.catalogue-intro:after{width:245px;height:165px;top:28px;right:32px}.catalogue-intro{min-height:230px}.catalogue .offer-card[data-category="Money"]{border-top-color:#bda7f1}.catalogue .offer-card[data-category="Bills"]{border-top-color:#edce77}.catalogue .offer-card[data-category="Food & pets"]{border-top-color:#f4b08f}
@media(max-width:1050px){.catalogue-intro:after{opacity:.15}.catalogue-intro>div{max-width:100%}}

/* Maintain readable contrast on the lilac editorial panel. */
.catalogue .checks-panel a{color:#102a43;text-decoration:underline;text-underline-offset:3px}
