html:has(body[data-page=cycling]),body[data-page=cycling]{overflow-x:clip}.cycling-hero{position:relative;background:linear-gradient(#672436e6,#672436e6),url(/images/pledge-hero.jpg) center/cover no-repeat;background-attachment:fixed;min-height:60vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:var(--space-12) var(--space-6);width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.cycling-hero-content{max-width:800px}.cycling-hero-title{font-size:48px;font-weight:var(--font-weight-bold);color:var(--white);margin-bottom:var(--space-10);line-height:1.15}.cycling-hero-subtitle{font-size:19px;color:#fffffff2;line-height:1.55}.cycling-content-section{background:var(--white);padding:var(--space-16) 0}.cycling-container{max-width:1280px;width:100%;box-sizing:border-box}.cycling-signing-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:clamp(48px,6vw,88px);align-items:start}.cycling-letter-column{position:sticky;top:20px;align-self:start;height:fit-content;z-index:1}.cycling-letter{padding:clamp(32px,4.5vh,52px) clamp(34px,4vw,54px);background:#fff;border:1px solid #ececec;border-radius:2px;box-shadow:0 18px 48px #311f1b21;color:#111}body[data-page=cycling] .cycling-letter-letterhead{display:flex;float:none;width:100%;max-width:none;padding:0;align-items:flex-start;justify-content:space-between;gap:var(--space-6);margin-bottom:clamp(32px,4.5vh,52px)}body[data-page=cycling] .cycling-letter-letterhead img{display:block;float:none;width:clamp(150px,17vw,230px);max-width:42%;height:auto}body[data-page=cycling] .cycling-letter-address{display:block;float:none;width:auto;margin:0;padding:0;color:#111;font-size:clamp(12px,1.45vh,15px);font-weight:400;line-height:1.55;text-align:right}body[data-page=cycling] .cycling-letter h2{display:block;float:none;width:auto;max-width:none;padding:0;margin:0 0 clamp(30px,4vh,46px);color:#080808;font-size:clamp(19px,2.3vh,25px);font-weight:700;line-height:1.2;letter-spacing:0;text-align:left;text-transform:none}body[data-page=cycling] .cycling-letter-download-wrap{display:flex;clear:both;justify-content:center;width:100%;margin-top:32px}body[data-page=cycling] .cycling-letter-download{display:inline-flex;position:static;float:none;align-items:center;justify-content:center;gap:8px;width:auto;height:auto;min-height:44px;margin:0;padding:12px 22px;border:1px solid rgba(101,36,27,.35);border-radius:999px;background:var(--white);box-sizing:border-box;color:var(--campaign-maroon);font-size:14px;font-weight:var(--font-weight-semibold);line-height:1.2;text-align:center;text-decoration:none;white-space:nowrap;transition:background-color .2s,border-color .2s,color .2s}body[data-page=cycling] .cycling-letter-download:hover{border-color:var(--campaign-maroon);background:var(--campaign-maroon);color:var(--white)}body[data-page=cycling] .cycling-letter p{display:block;float:none;width:auto;max-width:none;padding:0;margin:0 0 1.05em;font-size:clamp(12px,1.48vh,15.5px);font-weight:400;line-height:1.48;letter-spacing:0;text-align:left;text-transform:none}.cycling-letter p:last-child{margin-bottom:0}.cycling-letter-signoff{padding-top:.8em}.cycling-letter-addressee{font-weight:var(--font-weight-semibold)}.cycling-form-column{min-width:0;scroll-margin-top:20px}.cycling-mobile-sign-cta{display:none}.cycling-intro{margin:0 0 var(--space-10);text-align:left}.cycling-step-label{display:inline-block;margin-bottom:var(--space-3);color:var(--campaign-maroon);font-size:14px;font-weight:var(--font-weight-bold);letter-spacing:.1em;text-transform:uppercase}.cycling-intro-title{font-size:28px;font-weight:var(--font-weight-bold);color:var(--campaign-maroon);margin-bottom:var(--space-6);line-height:1.3}.cycling-intro p{font-size:18px;line-height:1.7;color:var(--darker-gray);margin-bottom:var(--space-4)}.cycling-intro-lead{font-weight:var(--font-weight-semibold);margin-top:var(--space-6)}.cycling-sector-list{margin:var(--space-2) 0 0;padding-left:var(--space-6);font-size:18px;line-height:1.7;color:var(--darker-gray)}.cycling-sector-list li{margin-bottom:var(--space-2)}.cycling-form-title{font-size:24px;font-weight:var(--font-weight-bold);color:var(--campaign-maroon);margin-bottom:var(--space-8);line-height:1.3;text-align:left}.cycling-form{background:var(--light-gray);padding:var(--space-8);border-radius:var(--radius-lg);margin-top:var(--space-6);width:100%;box-sizing:border-box}.cycling-form .postcode-input-container{position:relative}.cycling-form .postcode-tag{display:inline-flex;align-items:center;gap:var(--space-2);background:var(--campaign-maroon);color:var(--white);padding:var(--space-3);border-radius:var(--radius-md);font-size:14px;margin-bottom:var(--space-2);height:auto;min-height:fit-content}.cycling-form .postcode-tag .tag-text{flex:1}.cycling-form .postcode-tag .tag-remove{background:none;border:none;color:var(--white);font-size:18px;cursor:pointer;padding:0 0 0 var(--space-2);line-height:1;opacity:.8;transition:opacity .2s}.cycling-form .postcode-tag .tag-remove:hover{opacity:1}.cycling-form .postcode-tag.hidden{display:none}.cycling-submit-btn{background:var(--campaign-maroon);color:var(--white);font-size:18px;font-weight:var(--font-weight-bold);padding:var(--space-4) var(--space-12);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px;margin-top:var(--space-4);display:block;margin-left:auto;margin-right:auto}.cycling-submit-btn:hover{background:var(--campaign-maroon-dark);transform:translateY(-2px);box-shadow:0 4px 12px #00a89c4d}.cycling-submit-btn.visually-disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.cycling-hero-title{font-size:32px}.cycling-hero-subtitle{font-size:17px}.cycling-intro-title,.cycling-form-title{font-size:22px}.cycling-letter{padding:var(--space-6)}.cycling-letter h2{font-size:25px}.cycling-letter p{font-size:17px}body[data-page=cycling] .cycling-letter-letterhead{align-items:flex-start}body[data-page=cycling] .cycling-letter-letterhead img{width:145px}body[data-page=cycling] .cycling-letter-address{font-size:12px}body[data-page=cycling] .cycling-mobile-sign-cta{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));left:16px;z-index:1000;display:flex;align-items:center;justify-content:center;min-height:52px;padding:14px 24px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:var(--campaign-maroon);box-shadow:0 8px 24px #31141047;color:var(--white);font-size:17px;font-weight:var(--font-weight-bold);line-height:1.2;text-align:center;text-decoration:none;opacity:0;pointer-events:none;transform:translateY(20px);transition:opacity .2s ease,transform .2s ease}body[data-page=cycling] .cycling-mobile-sign-cta.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}}@media (max-width: 860px){.cycling-signing-layout{grid-template-columns:1fr;gap:var(--space-12)}.cycling-letter-column{position:static}}
