/* Homepage campaign — Sports Frame-Studio / November 2026.
   Surface palette: #E32332, #24262B, #FFFFFF. Textures use the same colours. */
.sfs-home-2027{--hp-red:#E32332;--hp-ink:#24262B;--hp-white:#FFFFFF;background:var(--hp-ink);color:var(--hp-white);font-family:Arial,Helvetica,sans-serif;overflow-x:clip}
.sfs-home-2027::before{display:none}
.sfs-home-2027 main{overflow:clip}
.sfs-home-2027 p{max-width:none}
.sfs-home-2027 :is(h1,h2,h3){font-family:Vank,Arial,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.015em;line-height:1.02;margin:0}
.sfs-home-2027 h2{font-size:clamp(44px,5.2vw,68px)}
.sfs-home-2027 em{font-style:normal;color:var(--hp-red)}
.sfs-home-2027 main section{scroll-margin-top:155px}
.sfs-home-2027 .hp-container{width:min(1240px,90%);margin-inline:auto;position:relative}
.sfs-home-2027 .hp-eyebrow{font:700 10px/1.5 Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase;margin:0 0 22px}
.sfs-home-2027 .hp-red{color:var(--hp-red)}
.sfs-home-2027 .hp-intro{font-size:17px;line-height:1.7;margin:23px 0 0;max-width:460px}
.hp-skip{position:fixed;z-index:1000;left:16px;top:8px;padding:12px 18px;background:#fff;color:#24262b;transform:translateY(-150%)}
.hp-skip:focus{transform:translateY(0)}
.hp-grain,.hp-paper{position:relative;isolation:isolate}
.hp-grain::before,.hp-paper::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:url('/assets/sfs-grain-white.svg') repeat;background-size:180px 180px;opacity:.12}
.hp-paper::before{background-image:url('/assets/sfs-grain-charcoal.svg');opacity:.065}
.sfs-home-2027 .hp-actions{display:flex;align-items:center;flex-wrap:wrap;gap:26px}
.sfs-home-2027 .hp-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:54px;padding:15px 22px;border:1px solid transparent;border-radius:2px;font:700 13px/1.3 Arial,sans-serif;text-decoration:none;cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .2s;box-shadow:none}
.sfs-home-2027 .hp-button span{font-size:23px;font-weight:400;transition:transform .2s}
.sfs-home-2027 .hp-button:hover span{transform:translate(3px,-3px)}
.sfs-home-2027 .hp-button-white{background:var(--hp-white);color:var(--hp-ink)}
.sfs-home-2027 .hp-button-white:hover{background:var(--hp-red);color:var(--hp-white);transform:none}
.sfs-home-2027 .hp-button-red{background:var(--hp-red);color:var(--hp-white)}
.sfs-home-2027 .hp-button-red:hover{background:var(--hp-ink);transform:none}
.sfs-home-2027 .hp-text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;color:inherit;text-decoration:none;border-bottom:1px solid currentColor;padding:8px 0;font:700 12px/1.5 Arial,sans-serif;transition:gap .2s}
.sfs-home-2027 .hp-text-link:hover{gap:27px}
.sfs-home-2027 .hp-text-link span{font-size:20px;font-weight:400;line-height:1}
.sfs-home-2027 .hp-dark{color:var(--hp-ink)}
/* The original navigation remains shared with the rest of the website. */
.sfs-home-2027 .site-header.wrap{max-width:none;width:100%;margin:0}
.sfs-home-2027 .site-header nav a,.sfs-home-2027 .site-header nav summary{font-family:Arial,sans-serif}
/* Opening campaign */
.hp-hero{background:var(--hp-ink);padding:38px 0 0}
.hp-hero-grid{display:grid;grid-template-columns:53% 47%;grid-template-areas:"heading art" "copy art" "foot foot";align-items:center;min-height:590px}
.hp-hero-heading{grid-area:heading;align-self:end;position:relative;z-index:3}
.sfs-home-2027 .hp-hero-heading .hp-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:28px}
.hp-square{display:inline-block;flex:none;width:7px;height:7px;background:var(--hp-red)}
.hp-season{margin-left:15px;padding-left:25px;border-left:1px solid #ffffff55;letter-spacing:.3em}
.sfs-home-2027 .hp-hero h1{font-size:clamp(64px,8.5vw,112px);line-height:.95;letter-spacing:.005em}
.hp-hero h1>span,.hp-hero h1>em{display:block}
.hp-hero-body{grid-area:copy;position:relative;z-index:3;align-self:start;padding-top:27px;padding-bottom:38px;animation-delay:.15s!important}
.sfs-home-2027 .hp-lead{max-width:415px;font-size:17px;line-height:1.7;margin:0 0 26px;color:#ffffffdd}
.sfs-home-2027 .hp-hero-note{font-size:10px;letter-spacing:.03em;margin:22px 0 0;color:#ffffffb3}
.hp-hero-note span{padding:0 7px;color:var(--hp-red)}
.hp-hero-art{grid-area:art;height:540px;position:relative;min-width:0;margin-left:-25px;perspective:1000px}
.hp-art-slash{position:absolute;inset:3% 7% 9% 26%;transform:skew(-12deg);background:var(--hp-red);clip-path:polygon(25% 0,100% 0,75% 100%,0 100%)}
.hp-art-grid{position:absolute;inset:8% -12% 8% 2%;background-image:radial-gradient(#ffffff5c .7px,transparent 1px);background-size:8px 8px;mask-image:linear-gradient(140deg,transparent 15%,#000 78%);opacity:.55}
.hp-poster{position:absolute;margin:0;line-height:0;border:6px solid var(--hp-white);box-shadow:0 18px 50px #24262bcc;transition:transform .5s cubic-bezier(.2,.75,.2,1)}
.hp-poster img{display:block;width:100%;height:auto}
.hp-poster-main{width:61%;right:5%;top:5%;z-index:2;transform:rotate(5deg)}
.hp-poster-secondary{width:42%;left:1%;bottom:13%;z-index:1;transform:rotate(-11deg)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.hp-hero-art:hover .hp-poster-main{transform:translateY(-7px) rotate(3deg)}.hp-hero-art:hover .hp-poster-secondary{transform:translate(-4px,-3px) rotate(-13deg)}}
.hp-art-caption{position:absolute;bottom:22px;right:6%;font-size:9px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.hp-art-caption span{padding-inline:6px;color:var(--hp-red)}
.hp-hero-foot{grid-area:foot;display:flex;gap:22px;align-items:center;justify-content:space-between;border-top:1px solid #ffffff26;padding:17px 0;font:700 9px/1.5 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.hp-hero-foot>span:nth-child(2){margin-left:auto;color:#ffffffb3}
.hp-hero-foot>a{display:grid;place-items:center;border:1px solid #ffffff66;width:30px;height:30px;border-radius:50%;text-decoration:none;font-size:16px}
/* Three clear benefits */
.hp-benefit-band{background:var(--hp-red);padding:24px 0}
.hp-benefit-band-grid{display:grid;grid-template-columns:1fr 1.15fr 1fr}
.hp-benefit-band-grid>div{display:flex;align-items:center;justify-content:center;gap:17px;padding:3px 25px;border-right:1px solid #ffffff5c}
.hp-benefit-band-grid>div:first-child{justify-content:flex-start;padding-left:0}
.hp-benefit-band-grid>div:last-child{border:0;padding-right:0}
.hp-benefit-band-grid svg{width:34px;height:34px;stroke:currentColor;stroke-width:1.5;fill:none;flex:none}
.sfs-home-2027 .hp-benefit-band p{margin:0}
.hp-benefit-band strong{display:block;text-transform:uppercase;font:400 22px/1.1 Vank,Arial,sans-serif;letter-spacing:.025em}
.hp-benefit-band p>span{display:block;font-size:11px;line-height:1.5;margin-top:5px}
/* Editorial club offer */
.hp-offer{background:var(--hp-white);color:var(--hp-ink);padding:90px 0 55px;overflow:hidden}
.hp-offer-grid{display:grid;grid-template-columns:54% 46%;align-items:stretch}
.hp-offer-copy{position:relative;z-index:2;padding-right:40px}
.hp-offer-list{margin:30px 0 22px}
.hp-offer-list>div{position:relative;padding:21px 0 21px 75px;border-top:1px solid #24262b33;min-height:103px}
.hp-offer-list dt{font:700 16px/1.35 Arial,sans-serif;margin:0 0 6px}
.hp-offer-list dd{font:14px/1.6 Arial,sans-serif;margin:0;max-width:420px}
.hp-offer-number{position:absolute;left:0;top:20px;color:var(--hp-red);font:400 58px/.9 Vank,Arial,sans-serif;letter-spacing:-.03em}
.hp-offer-art{position:relative;min-width:0;min-height:650px}
.hp-offer-art>img{position:absolute;bottom:-18px;left:-14%;width:126%;height:106%;max-width:none;object-fit:contain;object-position:center bottom;mask-image:linear-gradient(to bottom,#000 0 82%,transparent 99%)}
.hp-pride-type{position:absolute;top:12%;left:0;right:-4%;text-align:center;font:400 clamp(90px,14vw,190px)/.84 Vank,Arial,sans-serif;text-transform:uppercase;color:transparent;-webkit-text-stroke:1px #24262b30;transform:rotate(-7deg);letter-spacing:.02em}
.hp-portrait-dots{position:absolute;width:80%;height:45%;right:0;bottom:15%;background-image:radial-gradient(#24262b55 .8px,transparent 1px);background-size:5px 5px;mask-image:linear-gradient(150deg,transparent 10%,#000);opacity:.3}
.hp-portrait-caption{position:absolute;bottom:-12px;left:4%;right:0;text-align:center;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.11em}
.hp-portrait-caption span{color:var(--hp-red);padding:0 5px}
/* The process is one continuous section */
.hp-process{background:var(--hp-ink);padding:82px 0;overflow:hidden}
.hp-pitch-lines{position:absolute;width:440px;height:300px;border:1px solid #ffffff0d;right:-80px;top:-30px;transform:rotate(-16deg);pointer-events:none}
.hp-pitch-lines::before{content:"";position:absolute;width:135px;height:135px;left:50%;top:50%;border:1px solid #ffffff0d;border-radius:50%;transform:translate(-50%,-50%)}
.hp-pitch-lines::after{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:1px solid #ffffff0d}
.hp-section-heading{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:end}
.sfs-home-2027 .hp-section-heading>p{font-size:17px;line-height:1.8;max-width:350px;margin:0 0 4px auto;color:#ffffffc7}
.hp-process-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;padding:0;margin:49px 0 43px;list-style:none}
.hp-process-steps>li{position:relative;border-top:1px solid #ffffff4d;padding:25px 12px 0 0}
.hp-step-number{display:block;color:var(--hp-red);font:400 64px/1 Vank,Arial,sans-serif;margin-bottom:28px}
.hp-step-arrow{position:absolute;top:34px;right:4px;font:300 27px/1 Arial,sans-serif;color:#ffffff99}
.sfs-home-2027 .hp-process-steps h3{font-size:30px;margin-bottom:14px}
.sfs-home-2027 .hp-process-steps p{font:14px/1.75 Arial,sans-serif;margin:0;color:#ffffffc7;max-width:335px}
.hp-organiser{border:1px solid #ffffff3d;padding:0;margin:0;scroll-margin-top:160px}
.hp-organiser>summary{display:flex;gap:25px;justify-content:space-between;align-items:center;padding:23px 26px;list-style:none;font:400 24px/1.2 Vank,Arial,sans-serif;text-transform:uppercase;letter-spacing:.02em}
.hp-organiser>summary::-webkit-details-marker{display:none}
.hp-organiser>summary small{display:block;font:700 9px/1.5 Arial,sans-serif;letter-spacing:.16em;margin-bottom:6px}
.hp-plus{display:block;position:relative;flex:none;width:20px;height:20px}
.hp-plus::before,.hp-plus::after{content:"";position:absolute;top:9px;left:2px;width:16px;height:1px;background:currentColor;transition:transform .2s}
.hp-plus::after{transform:rotate(90deg)}
details[open]>summary .hp-plus::after{transform:rotate(0)}
.hp-organiser-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding:26px;border-top:1px solid #ffffff3d}
.sfs-home-2027 .hp-organiser-grid h3{font:700 14px/1.4 Arial,sans-serif;letter-spacing:0;text-transform:none}
.sfs-home-2027 .hp-organiser-grid p{font-size:13px;line-height:1.7;margin:10px 0 0;color:#ffffffc7}
/* The Club Cash Boost / compact, always-visible calculator */
.hp-cash{background:var(--hp-red);color:var(--hp-white);padding:76px 0 80px;overflow:hidden}
.hp-cash-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:75px;align-items:center}
.hp-cash-arrow{position:absolute;right:-70px;bottom:-30px;width:450px;height:450px;color:var(--hp-ink);opacity:.08;pointer-events:none}
.sfs-home-2027 .hp-cash-copy .hp-eyebrow{margin-bottom:18px}
.hp-cash-stat{font:400 clamp(145px,17vw,225px)/.85 Vank,Arial,sans-serif;letter-spacing:-.035em}
.hp-cash-stat>[data-count-up]{display:inline-block;transform-origin:50% 85%;min-width:1.6em}
.sfs-home-2027 .hp-cash h2{font-size:clamp(40px,4.5vw,59px);margin:14px 0 22px}
.sfs-home-2027 .hp-cash-copy>p:not(.hp-eyebrow){font-size:15px;line-height:1.75;max-width:415px;margin:16px 0 0}
.sfs-home-2027 .hp-cash-copy .hp-cash-small{font-size:11px!important;max-width:390px!important}
.hp-calculator{border:1px solid #ffffffa3;border-radius:16px;padding:28px;background:var(--hp-red);position:relative;min-width:0}
.sfs-home-2027 .hp-calculator>.hp-eyebrow{font-size:9px;margin-bottom:12px}
.sfs-home-2027 .hp-calculator h3{font-size:35px;margin-bottom:27px}
.hp-calculator-main{display:grid;grid-template-columns:1fr 1.05fr;gap:28px;align-items:end}
.hp-attendance>label,.hp-result>span{display:block;font:700 11px/1.5 Arial,sans-serif;margin-bottom:10px}
.hp-attendance-controls{display:grid;grid-template-columns:minmax(0,1fr) 29px 29px;gap:4px;align-items:center;border:1px solid #fff;padding:4px}
.hp-attendance-controls input{appearance:textfield;-moz-appearance:textfield;width:100%;min-width:0;height:40px;padding:0 0 0 7px;border:0;border-radius:0;background:var(--hp-red);color:#fff;font:400 30px/1 Vank,Arial,sans-serif}
.hp-attendance-controls input::-webkit-inner-spin-button,.hp-attendance-controls input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.hp-attendance-controls button{display:grid;place-items:center;width:29px;height:31px;border:1px solid #fff;border-radius:0;background:#fff;color:var(--hp-red);font-size:21px;line-height:1;cursor:pointer}
.hp-attendance-controls button:hover{background:var(--hp-ink);border-color:var(--hp-ink);color:#fff}
.hp-result{min-width:0;border-left:1px solid #ffffff70;padding-left:25px}
.hp-result output{display:block;font:400 clamp(40px,4vw,54px)/1 Vank,Arial,sans-serif;overflow-wrap:anywhere}
.sfs-home-2027 .hp-breakdown{font-size:11px;line-height:1.7;margin:21px 0 9px}
.sfs-home-2027 .hp-disclaimer{font-size:10px;line-height:1.7;margin:0 0 20px}
.hp-assumptions{border-top:1px solid #ffffff70;border-bottom:0;padding:0}
.hp-assumptions summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 0;font:700 11px/1.5 Arial,sans-serif}
.hp-assumptions summary::-webkit-details-marker{display:none}
.hp-assumption-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:3px 0 16px}
.hp-assumption-fields>label{font-size:11px;line-height:1.5}
.hp-assumption-fields>label:last-child{grid-column:1/-1}
.hp-assumption-fields input{display:block;width:100%;height:40px;margin-top:6px;padding:7px 10px;border:1px solid #fff;border-radius:0;background:var(--hp-red);color:#fff;font-size:16px}
.sfs-home-2027 .hp-assumptions p{font-size:10px;line-height:1.7;margin:0 0 12px}
.hp-calculator-brand{display:flex;justify-content:flex-end;padding-top:11px}
.hp-calculator-brand img{width:160px;height:auto;display:block}
.sfs-home-2027 .hp-calculator :focus-visible{outline:2px solid #fff;outline-offset:3px}
/* Social proof, typeset as editorial quotations */
.hp-reviews{background:var(--hp-white);color:var(--hp-ink);padding:75px 0}
.hp-review-heading{display:flex;align-items:end;justify-content:space-between;gap:30px}
.sfs-home-2027 .hp-review-heading h2{font-size:clamp(42px,4.5vw,57px)}
.hp-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:35px}
.hp-review-grid figure{margin:0;display:flex;flex-direction:column;border-top:2px solid var(--hp-red);padding:23px 0 0}
.hp-quote-mark{display:block;font:60px/.7 Georgia,serif;color:var(--hp-red);height:40px}
.hp-review-grid blockquote{font-size:16px;line-height:1.65;margin:0 0 23px;max-width:360px}
.hp-review-grid figcaption{font:700 11px/1.5 Arial,sans-serif;margin-top:auto}
.hp-review-grid figcaption span{display:block;font:400 10px/1.5 Arial,sans-serif;opacity:.75;margin-top:4px}
/* Useful answers, kept compact */
.hp-faq-section{background:var(--hp-white);color:var(--hp-ink);padding:0 0 80px}
.hp-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;border-top:1px solid #24262b30;padding-top:70px;align-items:start}
.sfs-home-2027 .hp-faq-grid h2{font-size:clamp(39px,4vw,53px)}
.sfs-home-2027 .hp-faq-grid .hp-intro{font-size:14px;margin-top:20px;margin-bottom:18px}
.hp-faq-list details{padding:0;border:0;border-bottom:1px solid #24262b30;scroll-margin-top:160px}
.hp-faq-list details:first-child{border-top:1px solid #24262b30}
.hp-faq-list summary{list-style:none;font:700 13px/1.55 Arial,sans-serif;padding:18px 27px 18px 0;position:relative}
.hp-faq-list summary::-webkit-details-marker{display:none}
.hp-faq-list summary::after{content:"+";position:absolute;right:0;top:14px;color:var(--hp-red);font:400 24px/1 Arial,sans-serif}
.hp-faq-list details[open]>summary::after{content:"−"}
.sfs-home-2027 .hp-faq-list details p{font:14px/1.8 Arial,sans-serif;padding-right:26px;margin:0 0 16px}
/* A personal, useful final invitation */
.hp-contact{background:var(--hp-ink);padding:80px 0 0;color:var(--hp-white);border-top:5px solid var(--hp-red)}
.hp-contact-grid{display:grid;grid-template-columns:1.1fr .9fr;column-gap:95px;row-gap:66px;align-items:center}
.sfs-home-2027 .hp-contact h2{font-size:clamp(48px,5.6vw,72px)}
.sfs-home-2027 .hp-contact .hp-intro{font-size:16px;color:#ffffffcc}
.hp-contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:27px}
.hp-contact-links a{font:700 13px/1.5 Arial,sans-serif;text-decoration:none;display:flex;gap:16px;max-width:100%;overflow-wrap:anywhere}
.hp-contact-links a:hover{color:var(--hp-red)}
.sfs-home-2027 .hp-contact-meta{font-size:10px;line-height:1.9;color:#ffffffb3;margin:27px 0 0}
.hp-enquiry-card{background:var(--hp-white);color:var(--hp-ink);padding:35px;position:relative}
.sfs-home-2027 .hp-enquiry-card h3{font-size:43px;margin:0 0 27px}
.hp-enquiry-card form label{font:700 11px/1.5 Arial,sans-serif;margin:0;display:block}
.hp-enquiry-card select{height:50px;background:#fff;border:1px solid #24262b80;border-radius:0;color:var(--hp-ink);padding:11px 12px;margin:9px 0 0;font:14px Arial,sans-serif;width:100%}
.sfs-home-2027 .hp-form-help{font-size:11px;line-height:1.7;margin:13px 0 22px}
.hp-enquiry-card .hp-button{width:100%}
.sfs-home-2027 .hp-enquiry-note{font:10px/1.6 Arial,sans-serif;margin:19px 0 0;max-width:290px}
.sfs-home-2027 #form-status{color:var(--hp-ink);font-size:11px;line-height:1.6;margin:12px 0 0}
.sfs-home-2027 #form-status:empty{display:none}
.hp-family-link{grid-column:1/-1;border-top:1px solid #ffffff40;padding:29px 0;display:flex;align-items:center;justify-content:space-between;gap:25px}
.hp-family-link .hp-eyebrow{display:block;margin:0 0 7px;font-size:8px}
.sfs-home-2027 .hp-family-link p{margin:0;font:400 29px/1.1 Vank,Arial,sans-serif;text-transform:uppercase;letter-spacing:.025em}
.sfs-home-2027 .hp-footer{display:block;background:var(--hp-ink);color:#fff;padding:0;border-top:1px solid #ffffff33;font-family:Arial,sans-serif}
.hp-footer-top{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:33px 0 28px}
.hp-footer-top img{display:block;width:230px;max-width:100%;height:auto}
.sfs-home-2027 .hp-footer-top p{font-size:9px;letter-spacing:.09em;text-transform:uppercase;margin:0}
.hp-footer-top>div{display:flex;gap:18px}
.sfs-home-2027 .hp-footer a{font-size:10px;color:#fff;text-decoration:none}
.hp-footer-bottom{border-top:1px solid #ffffff26;padding:17px 0 25px;display:flex;justify-content:space-between;align-items:center;gap:30px}
.sfs-home-2027 .hp-footer-bottom p{font-size:9px;margin:0;color:#ffffffb3}
.hp-footer-bottom nav{display:flex;gap:20px;width:auto}
.sfs-home-2027 .hp-footer-bottom nav a{font:400 9px Arial,sans-serif;letter-spacing:0;text-transform:none}
.sfs-home-2027 .hp-footer-bottom nav a::after{display:none}
/* Finite entrances and scroll reveals; content is visible when scripting is unavailable. */
@keyframes hp-enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes hp-poster-main{from{opacity:0;transform:translate(22px,25px) rotate(9deg)}to{opacity:1;transform:rotate(5deg)}}
@keyframes hp-poster-secondary{from{opacity:0;transform:translate(20px,20px) rotate(-4deg)}to{opacity:1;transform:rotate(-11deg)}}
@keyframes hp-cash-bounce{0%,100%{transform:scale(1)}45%{transform:scale(1.09)}72%{transform:scale(.98)}}
@media(prefers-reduced-motion:no-preference){.hp-enter{animation:hp-enter .8s cubic-bezier(.2,.7,.2,1) both}.hp-poster-main{animation:hp-poster-main 1s .18s cubic-bezier(.2,.7,.2,1) both}.hp-poster-secondary{animation:hp-poster-secondary .95s .32s cubic-bezier(.2,.7,.2,1) both}.hp-motion-ready [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.75,.2,1);transition-delay:var(--hp-delay,0ms)}.hp-motion-ready [data-reveal].hp-visible{opacity:1;transform:translateY(0)}.hp-cash-stat .is-bouncing{animation:hp-cash-bounce .55s ease both}}
@media(prefers-reduced-motion:reduce){.sfs-home-2027{scroll-behavior:auto}.sfs-home-2027 *, .sfs-home-2027 *::before,.sfs-home-2027 *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}[data-reveal]{opacity:1!important;transform:none!important}}
/* Laptop / tablet */
@media(max-width:1050px){
 .hp-hero-grid{grid-template-columns:52% 48%;min-height:530px}.hp-hero-art{height:470px;margin-left:-10px}.sfs-home-2027 .hp-hero h1{font-size:8.7vw}.sfs-home-2027 .hp-lead{font-size:15px;max-width:350px}.hp-hero .hp-actions{gap:14px}.hp-hero .hp-button{font-size:12px;padding:14px 16px}.hp-hero .hp-text-link{font-size:10px}
 .hp-benefit-band-grid>div{padding-inline:17px;gap:12px}.hp-benefit-band strong{font-size:19px}.hp-benefit-band p>span{font-size:10px}.hp-benefit-band-grid svg{width:29px;height:29px}
 .hp-offer{padding-top:70px}.hp-offer-copy{padding-right:12px}.hp-offer-list>div{padding-left:62px}.hp-offer-number{font-size:51px}.hp-offer-list dt{font-size:14px}.hp-offer-list dd{font-size:13px}.hp-offer-art>img{width:142%;left:-20%}
 .hp-cash-grid{gap:42px}.hp-calculator{padding:23px}.hp-calculator-main{gap:18px}.hp-result{padding-left:17px}.hp-attendance>label,.hp-result>span{font-size:10px}.hp-contact-grid{column-gap:55px}.hp-enquiry-card{padding:28px}.hp-faq-grid{gap:45px}
}
@media(min-width:641px) and (max-width:800px){
 .hp-hero-art{height:390px}.hp-hero-grid{min-height:470px}.hp-art-caption{font-size:7px;right:1%;bottom:32px}.hp-hero-body{padding-bottom:25px}.hp-hero-foot{font-size:8px}.hp-offer-art>img{height:92%}.hp-process-steps{gap:20px}.hp-cash-grid{grid-template-columns:1fr 1.25fr;gap:28px}.hp-calculator-main{grid-template-columns:1fr}.hp-result{border-left:0;border-top:1px solid #ffffff70;padding:16px 0 0}.hp-result output{font-size:52px}.hp-review-grid{gap:23px}.hp-review-grid blockquote{font-size:14px}.hp-contact-grid{gap:32px}.hp-enquiry-card{padding:23px}.hp-enquiry-card .hp-button{font-size:11px}.hp-footer-top{gap:20px}.hp-footer-top img{width:185px}.hp-footer-top>p{display:none}
}
/* Mobile: keep headline and poster together, then give the copy and actions room. */
@media(max-width:640px){
 .sfs-home-2027 .hp-container{width:90%}.sfs-home-2027 h2{font-size:46px}.sfs-home-2027 .hp-eyebrow{font-size:9px;margin-bottom:18px}.sfs-home-2027 .hp-intro{font-size:15px;line-height:1.65}
 .sfs-home-2027 main section{scroll-margin-top:110px}.sfs-home-2027 .site-header.wrap{padding:8px 4%;width:100%;max-width:none}
 .hp-hero{padding-top:26px}.hp-hero-grid{min-height:0;grid-template-columns:53% 47%;grid-template-areas:"heading art" "copy copy" "foot foot";align-items:center}.hp-hero-heading{align-self:center}.sfs-home-2027 .hp-hero-heading .hp-eyebrow{font-size:7px;letter-spacing:.08em;gap:5px;margin-bottom:16px;flex-wrap:wrap}.hp-square{width:5px;height:5px}.hp-season{padding-left:9px;margin-left:4px;letter-spacing:.12em}.sfs-home-2027 .hp-hero h1{font-size:clamp(34px,8.8vw,56px);line-height:.98}.hp-hero h1>em{max-width:100%}.hp-hero-art{height:235px;margin:-8px -3vw 0 -2vw}.hp-poster-main{width:83%;top:5%;right:9%;border-width:4px;transform:rotate(5deg)}.hp-poster-secondary{display:none}.hp-art-slash{inset:0 3% 5% 18%;transform:skew(-8deg)}.hp-art-grid{inset:0 -8% 0 0;background-size:6px 6px}.hp-art-caption{display:none}.hp-hero-body{padding-top:14px;padding-bottom:24px}.sfs-home-2027 .hp-lead{font-size:15px;line-height:1.65;max-width:440px;margin-bottom:20px}.hp-hero .hp-actions{display:grid;grid-template-columns:1fr;gap:11px}.hp-hero .hp-button{min-height:50px;font-size:13px;padding:13px 17px}.hp-hero .hp-text-link{justify-self:start;font-size:11px;padding:7px 0}.sfs-home-2027 .hp-hero-note{font-size:9px;margin-top:15px;line-height:1.7}.hp-hero-foot{padding:12px 0;gap:12px;font-size:7px;letter-spacing:.06em}.hp-hero-foot>span:first-child{max-width:85px}.hp-hero-foot>span:nth-child(2){max-width:170px}.hp-hero-foot>a{width:27px;height:27px;flex:none}
 .hp-benefit-band{padding:9px 0}.hp-benefit-band-grid{grid-template-columns:1fr}.hp-benefit-band-grid>div,.hp-benefit-band-grid>div:first-child,.hp-benefit-band-grid>div:last-child{justify-content:flex-start;padding:15px 0;gap:16px;border:0;border-bottom:1px solid #ffffff4d}.hp-benefit-band-grid>div:last-child{border-bottom:0}.hp-benefit-band-grid svg{width:28px;height:28px}.hp-benefit-band strong{font-size:21px;letter-spacing:.02em}.hp-benefit-band p>span{font-size:11px;margin-top:4px}
 .hp-offer{padding:48px 0}.hp-offer-grid{grid-template-columns:1fr}.hp-offer-copy{padding:0}.hp-offer-art{display:none}.hp-offer-list{margin:25px 0 19px}.hp-offer-list>div{padding:19px 0 19px 61px;min-height:98px}.hp-offer-list dt{font-size:15px;line-height:1.45}.hp-offer-list dd{font-size:13px;line-height:1.6}.hp-offer-number{font-size:51px;top:21px}
 .hp-process{padding:48px 0}.hp-section-heading{grid-template-columns:1fr;gap:19px}.sfs-home-2027 .hp-section-heading>p{font-size:14px;margin:0;line-height:1.7}.hp-section-heading>p br{display:none}.hp-section-heading>p br::after{content:" "}.hp-process-steps{grid-template-columns:1fr;gap:0;margin:28px 0}.hp-process-steps>li{display:grid;grid-template-columns:48px 1fr;gap:20px;padding:21px 26px 23px 0}.hp-step-number{font-size:48px;margin:0}.hp-step-arrow{top:24px;font-size:21px}.sfs-home-2027 .hp-process-steps h3{font-size:27px;margin-bottom:10px}.sfs-home-2027 .hp-process-steps p{font-size:13px;line-height:1.75;max-width:none}.hp-organiser>summary{padding:18px;gap:16px;font-size:22px;line-height:1.25}.hp-organiser>summary small{font-size:8px}.hp-organiser-grid{grid-template-columns:1fr;gap:23px;padding:21px 18px}.hp-organiser-grid p{margin-top:7px!important}
 .hp-cash{padding:47px 0}.hp-cash-grid{grid-template-columns:1fr;gap:31px}.hp-cash-stat{font-size:147px}.sfs-home-2027 .hp-cash h2{font-size:44px;margin:10px 0 17px}.sfs-home-2027 .hp-cash-copy>p:not(.hp-eyebrow){font-size:14px;max-width:450px}.hp-calculator{padding:22px 19px}.sfs-home-2027 .hp-calculator h3{font-size:32px;margin-bottom:22px}.hp-calculator-main{grid-template-columns:1fr 1fr;gap:17px}.hp-result{padding-left:17px}.hp-result output{font-size:45px}.hp-attendance-controls{grid-template-columns:minmax(0,1fr) 27px 27px;gap:3px}.hp-attendance-controls input{font-size:27px;padding-left:4px}.hp-attendance-controls button{width:27px;height:29px}.hp-attendance>label,.hp-result>span{font-size:10px;line-height:1.5}.hp-calculator-brand img{width:140px}.hp-cash-arrow{width:340px;height:340px;right:-80px;bottom:55px}.hp-assumption-fields{grid-template-columns:1fr}.hp-assumption-fields>label:last-child{grid-column:auto}
 .hp-reviews{padding:49px 0}.hp-review-heading{align-items:flex-start;flex-direction:column;gap:17px}.sfs-home-2027 .hp-review-heading h2{font-size:42px}.hp-review-grid{grid-template-columns:1fr;gap:28px;margin-top:26px}.hp-review-grid figure{padding-top:20px}.hp-review-grid blockquote{font-size:15px;line-height:1.7;margin-bottom:16px;max-width:none}.hp-quote-mark{font-size:51px;height:32px}.hp-review-grid figcaption{font-size:11px}.hp-review-grid figcaption span{display:inline;margin-left:7px;font-size:9px}
 .hp-faq-section{padding-bottom:48px}.hp-faq-grid{grid-template-columns:1fr;gap:27px;padding-top:43px}.sfs-home-2027 .hp-faq-grid h2{font-size:42px}.sfs-home-2027 .hp-faq-grid .hp-intro{margin-top:16px;margin-bottom:14px}.hp-faq-list summary{font-size:13px;padding-block:17px}.sfs-home-2027 .hp-faq-list details p{font-size:13px;padding-right:12px}
 .hp-contact{padding-top:48px}.hp-contact-grid{grid-template-columns:1fr;gap:32px}.sfs-home-2027 .hp-contact h2{font-size:48px}.sfs-home-2027 .hp-contact .hp-intro{font-size:14px}.hp-contact-links{margin-top:23px}.hp-contact-links a{font-size:12px}.sfs-home-2027 .hp-contact-meta{margin-top:20px;font-size:10px}.hp-enquiry-card{padding:26px 23px}.sfs-home-2027 .hp-enquiry-card h3{font-size:39px;margin-bottom:23px}.hp-family-link{flex-direction:column;align-items:flex-start;gap:14px;padding-block:26px}.sfs-home-2027 .hp-family-link p{font-size:28px}.hp-footer-top{flex-wrap:wrap;gap:19px;padding-block:26px}.hp-footer-top img{width:190px}.sfs-home-2027 .hp-footer-top p{display:none}.hp-footer-top>div{gap:16px;margin-left:auto}.hp-footer-bottom{flex-wrap:wrap;gap:15px}.hp-footer-bottom nav{order:3;flex-basis:100%;gap:20px}.hp-footer-bottom>a{margin-left:auto}
}
@media(max-width:370px){.hp-hero-art{height:214px}.sfs-home-2027 .hp-hero h1{font-size:33px}.sfs-home-2027 .hp-hero-heading .hp-eyebrow{font-size:6.5px}.hp-season{margin-left:0;padding-left:6px}.hp-calculator{padding:19px 15px}.hp-calculator-main{gap:12px}.hp-result{padding-left:12px}.hp-result output{font-size:38px}.hp-attendance-controls{grid-template-columns:minmax(0,1fr) 25px 25px}.hp-attendance-controls button{width:25px}.sfs-home-2027 .hp-calculator h3{font-size:29px}.hp-footer-top>div{margin-left:0}}

/* Homepage refinement: clear artwork captions and tighter editorial spacing. */
.sfs-home-2027 .hp-cash-copy .hp-eyebrow{margin-bottom:36px}
.hp-cash-stat{line-height:1}
.hp-cash-stat>[data-count-up]{vertical-align:top}
.sfs-home-2027 .hp-cash h2{margin:-14px 0 20px}
.hp-footer-top img{width:165px}
.hp-process{padding:62px 0}
.hp-process-steps{margin:34px 0 30px}
.hp-step-number{margin-bottom:18px}
.hp-organiser>summary{background:#E32332;color:#FFFFFF}
.hp-pride-type{font-size:clamp(160px,23vw,310px);top:9%;left:-16%;right:-18%;line-height:.88;-webkit-text-stroke:1.5px #24262b55}
.hp-art-caption{z-index:3;bottom:0;right:0;left:0;text-align:center;background:#24262B;padding:12px 6px;font-size:10px;color:#FFFFFF;white-space:normal}
@media(max-width:800px) and (min-width:641px){.hp-art-caption{font-size:8px}}
@media(max-width:640px){
 .hp-process{padding:38px 0}.hp-process-steps{margin:23px 0}.hp-step-number{margin:0}
 .hp-footer-top img{width:145px}
 .sfs-home-2027 .hp-cash-copy .hp-eyebrow{margin-bottom:29px}
 .sfs-home-2027 .hp-cash h2{margin:-8px 0 17px}
}

.hp-pride-label {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  color: var(--hp-red);
  font: 700 12px/1.4 Arial, sans-serif;
  letter-spacing: .08em;
}

/* Give the poster caption and following copy room below the artwork. */
@media(min-width:641px){
 .hp-hero-art{margin-bottom:30px}
 .hp-art-caption{bottom:-28px}
}
@media(max-width:640px){
 .hp-hero-art{margin-bottom:18px}
 .hp-hero-body{padding-top:24px}
}

@media(max-width:640px) and (prefers-reduced-motion:no-preference){
 .hp-poster-main{animation:hp-mobile-poster-in 650ms 100ms cubic-bezier(.2,.75,.25,1) both}
 .hp-motion-ready [data-reveal]{transition-duration:450ms;transform:translateY(12px)}
 .hp-motion-ready [data-reveal].hp-visible{transform:translateY(0)}
}
@keyframes hp-mobile-poster-in{from{opacity:0;transform:translateY(14px) rotate(5deg)}to{opacity:1;transform:translateY(0) rotate(5deg)}}

.hp-benefit-controls{display:none}
@media(max-width:640px){
 .hp-benefit-band{position:relative;padding:15px 0}
 .hp-benefit-band-grid{display:block;padding-right:60px;min-height:55px}
 .hp-benefit-band-grid>div,.hp-benefit-band-grid>div:first-child,.hp-benefit-band-grid>div:last-child{display:none;border:0;margin:0;padding:0;min-height:55px;justify-content:flex-start;gap:12px}
 .hp-benefit-band-grid>div.hp-benefit-active{display:flex}
 .hp-benefit-band strong{font-size:21px;line-height:1.1}
 .hp-benefit-band p>span{font-size:11px;margin-top:4px}
 .hp-benefit-band-grid svg{width:29px;height:29px}
 .hp-benefit-controls{position:absolute;right:4%;top:50%;transform:translateY(-50%);display:flex;gap:3px}
 .hp-benefit-controls button{display:grid;place-items:center;width:27px;height:36px;padding:0;border:1px solid #ffffff66;border-radius:4px;background:transparent;color:#FFFFFF;font:20px/1 Arial,sans-serif;cursor:pointer}
 .hp-benefit-controls button:first-child{font-size:12px}
}
@media(max-width:640px) and (prefers-reduced-motion:no-preference){
 .hp-benefit-active{animation:hp-benefit-in 280ms ease both}
}
@keyframes hp-benefit-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:640px){
 .hp-benefit-band-grid{padding-right:0}
}
@media(max-width:640px) and (prefers-reduced-motion:reduce){
 .hp-benefit-band-grid>div,.hp-benefit-band-grid>div:first-child,.hp-benefit-band-grid>div:last-child{display:flex;padding:9px 0}
}

/* Raised benefits tab straddles the mobile hero and the white page. */
@media(max-width:640px){
 .sfs-home-2027 .hp-benefit-band{
  position:relative;
  z-index:3;
  width:88%;
  margin:-25px auto 0;
  padding:14px 12px;
  border-radius:17px;
  background:#E32332;
  border-top:1px solid #ffffff55;
  box-shadow:0 10px 22px #24262b40,inset 0 1px 0 #ffffff22;
 }
 .sfs-home-2027 .hp-benefit-band .hp-benefit-band-grid{width:100%;min-height:50px;margin:0;padding:0}
 .hp-benefit-band-grid>div,.hp-benefit-band-grid>div:first-child,.hp-benefit-band-grid>div:last-child{justify-content:center;min-height:50px;gap:12px}
 .sfs-home-2027 .hp-benefit-band p{text-align:center;margin:0}
 .hp-benefit-band strong{font-size:clamp(17px,5vw,22px)}
 .hp-benefit-band p>span{font-size:11px;line-height:1.4}
 .hp-benefit-band-grid svg{width:29px;height:29px;flex:none}
 .hp-hero{padding-bottom:25px}
 .hp-offer{margin-top:-39px;padding-top:83px}
}

@media(max-width:640px) and (prefers-reduced-motion:no-preference){
 .sfs-home-2027 .hp-benefit-band .hp-benefit-band-grid{display:grid;overflow:hidden;isolation:isolate}
 .hp-benefit-band-grid>div,.hp-benefit-band-grid>div:first-child,.hp-benefit-band-grid>div:last-child{
  display:flex;grid-area:1/1;min-width:0;opacity:0;visibility:hidden;transform:translateX(105%);animation:none;transition:none;
 }
 .hp-benefit-band-grid>div.hp-benefit-active{opacity:1;visibility:visible;transform:translateX(0);transition:transform 400ms ease,opacity 400ms ease}
 .hp-benefit-band-grid>div.hp-benefit-exiting{opacity:0;visibility:visible;transform:translateX(-105%);transition:transform 400ms ease,opacity 400ms ease;pointer-events:none}
}

/* A soft brand-red light adds depth behind the original poster artwork. */
.hp-hero-art::before{
 content:"";
 position:absolute;
 inset:3% -3% 2% 9%;
 background:radial-gradient(ellipse at 58% 46%,#E3233238 0%,#E3233215 38%,transparent 70%);
 pointer-events:none;
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .hp-poster-main,.hp-poster-secondary{animation-fill-mode:backwards;transition:transform 350ms cubic-bezier(.2,.75,.25,1),box-shadow 350ms ease}
 .hp-hero-art:hover .hp-poster-main{transform:translateY(-8px) rotate(3deg);box-shadow:0 25px 55px #24262bdd,0 0 24px #E3233226}
 .hp-hero-art:hover .hp-poster-secondary{transform:translate(-4px,-4px) rotate(-12deg)}
}
@media(max-width:640px){
 .hp-hero-art::before{inset:0 -8% 0 0;background:radial-gradient(ellipse,#E323322b,transparent 70%)}
}
