.rfg-section{max-width:1180px;margin:44px auto;padding:clamp(28px,5vw,56px);border:1px solid #d7e6d9;border-radius:28px;background:#fff;color:#123f33;box-shadow:0 18px 55px rgba(18,63,51,.07)}
.rfg-subscription-hero{max-width:1180px;margin:28px auto 18px;padding:clamp(38px,7vw,78px) clamp(22px,6vw,70px);border:1px solid #d7e6d9;border-radius:30px;background:linear-gradient(135deg,#f8fcf7,#dff3df);color:#123f33;text-align:center;box-sizing:border-box}.rfg-subscription-hero h1{max-width:820px;margin:8px auto 16px;font-size:clamp(38px,6vw,64px);line-height:1.04}.rfg-subscription-hero>p:not(.rfg-eyebrow){max-width:720px;margin:0 auto 24px;color:#587169;font-size:18px;line-height:1.65}.rfg-subscription-hero .rfg-button{margin-top:0}
.rfg-section *{box-sizing:border-box}.rfg-eyebrow{margin:0 0 9px;color:#388447;font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.rfg-section h2{max-width:760px;margin:0 0 12px;font-size:clamp(30px,4vw,48px);line-height:1.08}.rfg-intro,.rfg-section>p{color:#5d756d;line-height:1.7}.rfg-plan-grid,.rfg-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}.rfg-plan{display:flex;flex-direction:column;padding:26px;border:1px solid #dce9df;border-radius:22px;background:#f8fbf8}.rfg-plan.is-featured{border-color:#72cb67;background:#f1faef;box-shadow:0 12px 32px rgba(65,145,70,.12)}.rfg-tag{align-self:flex-start;padding:6px 10px;border-radius:999px;background:#dff3da;color:#267b37;font-size:12px;font-weight:800}.rfg-plan-image{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:4/3;margin:18px 0 4px;padding:12px;border-radius:16px;background:#fff}.rfg-plan-image img{display:block;width:100%;height:100%;object-fit:contain}.rfg-plan h3{margin:14px 0 8px;font-size:25px}.rfg-price{display:flex;align-items:baseline;gap:6px;margin:4px 0}.rfg-price strong{color:#20872f;font-size:30px}.rfg-plan ul{display:grid;gap:10px;margin:18px 0 24px;padding:0;list-style:none}.rfg-plan li:before{content:'✓';margin-right:9px;color:#318d42;font-weight:900}.rfg-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:auto;padding:12px 18px;border:0;border-radius:13px;background:#74ca67;color:#103c2f!important;font-weight:800;text-decoration:none;cursor:pointer}.rfg-note{margin:18px 0 0!important;font-size:14px}.rfg-postcode{background:linear-gradient(135deg,#f1faef,#fff)}.rfg-postcode form{display:flex;align-items:end;gap:12px;max-width:620px;margin-top:22px}.rfg-section label{display:grid;gap:7px;color:#254e43;font-weight:700}.rfg-section input,.rfg-section textarea{width:100%;min-height:48px;padding:12px 14px;border:1px solid #cddfd2;border-radius:12px;background:#fff;color:#123f33;font:inherit}.rfg-result{display:none;margin:16px 0 0!important;padding:14px 16px;border-radius:12px;font-weight:700}.rfg-result.is-ok{display:block;background:#e8f7e5;color:#216d31}.rfg-result.is-out{display:block;background:#fff3d8;color:#72510b}.rfg-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}.rfg-form .full{grid-column:1/-1}.rfg-consent{display:flex!important;align-items:flex-start}.rfg-consent input{width:18px;min-height:18px;margin-top:3px}.rfg-hp{position:absolute!important;left:-9999px!important}.rfg-success{margin:18px 0;padding:14px 16px;border-radius:12px;background:#e8f7e5;color:#216d31;font-weight:750}.rfg-reviews blockquote{margin:0;padding:24px;border-radius:18px;background:#f6faf6}.rfg-reviews blockquote div{color:#3f9a48;letter-spacing:.08em}.rfg-reviews blockquote p{color:#365a50;line-height:1.65}.rfg-reviews cite{font-style:normal;font-weight:800}@media(max-width:800px){.rfg-section{margin:28px 14px;padding:27px 19px;border-radius:21px}.rfg-plan-grid,.rfg-review-grid,.rfg-form{grid-template-columns:1fr}.rfg-plan-image{aspect-ratio:16/11;padding:10px}.rfg-postcode form{align-items:stretch;flex-direction:column}.rfg-postcode form label,.rfg-postcode .rfg-button{width:100%}}
.rf-recovery-consent{margin:18px 0!important;padding:15px 17px;border:1px solid #d7e6d9;border-radius:14px;background:#f5faf4}.rf-recovery-consent label{display:flex!important;align-items:flex-start;gap:10px;color:#123f33;font-weight:700}.rf-recovery-consent input{margin-top:4px}.rf-recovery-consent small{display:block;margin:7px 0 0 27px;color:#6a817b}
@media(max-width:800px){.rfg-subscription-hero{margin:18px 14px;padding:42px 20px;border-radius:22px}}
