/* A lighter scale for the entire preview; colours, typefaces and layout stay intact. */
.hero{min-height:min(770px,90svh)}
.hero-content{padding-top:150px;padding-bottom:90px}
.hero h1{font-size:clamp(76px,10vw,154px);line-height:.83;max-width:860px}
.hero-sub{font-size:clamp(18px,1.6vw,22px);max-width:510px}
.section{padding:clamp(68px,7.5vw,108px) 0}
.section-title{font-size:clamp(52px,6.4vw,96px);line-height:.86}
.section-intro{font-size:17px;line-height:1.5}
.story,.story.small{min-height:450px}
.story h3{font-size:clamp(38px,3.5vw,54px)}
.match-section .section-title{font-size:clamp(62px,7.6vw,115px)}
.join .section-title{font-size:clamp(64px,7.8vw,120px)}
.join p{font-size:20px;line-height:1.4}
.home-news{padding:80px 0 76px}
.home-news-head{margin-bottom:28px}
.home-news-head-side p{font-size:17px;line-height:1.5}
.home-news-slide,.home-news-visual{min-height:470px}
.home-news-copy{padding:clamp(28px,4vw,60px)}
.home-news-copy h3{font-size:clamp(54px,5.2vw,78px);line-height:.88;margin:20px 0 18px}
.home-news-copy p{font-size:17px;line-height:1.5;margin-bottom:24px}
.teams-section{padding:clamp(72px,7.6vw,105px) 0}
.teams-intro{margin-bottom:33px}
.teams-heading h2{font-size:clamp(75px,9vw,135px);line-height:.8}
.teams-intro-side p{font-size:17px;line-height:1.5}
.teams-arena,.teams-visual{min-height:555px}
.teams-visual-copy strong{font-size:clamp(47px,4.3vw,67px)}
.teams-route{min-height:69px}
.teams-route-main strong{font-size:clamp(27px,2.6vw,38px)}
.ps-home.wide h2{font-size:clamp(65px,7.2vw,105px)}
.club-footer-hero{padding:72px 0 80px}
.club-footer-hero h2{font-size:clamp(75px,10vw,150px);line-height:.8}
.club-footer-primary{min-height:54px;font-size:21px}

.page-hero{min-height:520px}
.page-hero .wrap{padding-top:62px;padding-bottom:62px}
.page-hero h1{font-size:clamp(80px,10vw,150px);line-height:.82;margin-bottom:25px}
.page-hero .lede{font-size:clamp(18px,1.7vw,23px);line-height:1.42}
.page-hero-visual{height:360px}
.page-section{padding:78px 0}
.page-section h2,.section-head h2{font-size:clamp(55px,7.5vw,110px);line-height:.87}
.section-head{margin-bottom:32px}
.section-head p{font-size:18px;line-height:1.5}
.story-text{font-size:19px;line-height:1.55}
.value-card{min-height:255px;padding:23px}
.value-card h3{font-size:36px}
.stat-line b{font-size:82px}
.score-tile{min-height:270px;padding:22px}
.score-tile strong{font-size:clamp(65px,6vw,92px)}
.score-tile.feature strong{font-size:clamp(94px,9vw,132px)}
.team-entry{min-height:270px;padding:23px}
.team-entry .giant{font-size:110px}
.team-entry h3{font-size:38px}
.join-step{min-height:255px;padding:25px}
.join-step span{font-size:86px}
.join-step h3{font-size:37px}
.news-card{min-height:410px}
.news-card h3{font-size:clamp(40px,3.5vw,56px)}
.article-shell h2{font-size:clamp(52px,6.5vw,82px)}
.training-section,.club-faq,.club-life,.basket-rules,.volunteer-section,.club-partners,.president-word{padding-top:72px;padding-bottom:72px}
.training-section .section-head h2,.club-faq .section-head h2,.club-life h2,.basket-rules h2,.all-results .section-head h2{font-size:clamp(52px,6.3vw,88px)}
.volunteer-section h2,.club-partners h2,.club-outing h2,.join-monclub h2{font-size:clamp(52px,6.3vw,88px)}
.president-word h2{font-size:clamp(55px,6.3vw,92px)}
.president-word blockquote p{font-size:clamp(34px,3.5vw,54px)}

.shopfront-hero,.shopfront-grid{min-height:625px}
.shopfront-hero h1{font-size:clamp(120px,12.5vw,190px);line-height:.8}
.shopfront-image{height:535px}
.shop-collection,.shop-how,.shop-faq,.product-story{padding-top:78px;padding-bottom:82px}
.shop-collection h2,.shop-how h2,.shop-faq h2,.product-story h2,.product-other h2,.shop-end h2{font-size:clamp(55px,6.8vw,100px);line-height:.88}
.shop-collection-head p,.shop-how-head p{font-size:17px;line-height:1.5}
.shop-card-stage{height:445px}
.shop-card-copy{padding:24px 26px 27px}
.shop-card-copy h3{font-size:clamp(48px,4.3vw,63px)}
.shop-card-copy p{font-size:16px;line-height:1.48;margin-bottom:21px}
.shop-how-grid>div{min-height:220px;padding:25px}
.shop-how-grid h3{font-size:40px}
.product-grid{padding-bottom:78px}
.product-main-image{height:min(61vw,600px);min-height:450px}
.product-info h1{font-size:clamp(88px,8.3vw,135px);line-height:.8;margin:16px 0 24px}
.product-lede{font-size:clamp(18px,1.7vw,23px);line-height:1.43}
.product-story-copy{font-size:19px;line-height:1.55}

.contact-hero{min-height:500px}
.contact-hero-grid{padding:66px 0}
.contact-hero h1{font-size:clamp(86px,10.5vw,165px);line-height:.81}
.contact-body{padding-top:78px;padding-bottom:82px}
.contact-body h2{font-size:clamp(60px,6.4vw,95px)}
.contact-form h3{font-size:45px}
.map-grid h2{font-size:53px}

.ps-page .ps-hero-grid,.ps-page .ps-hero-media,.ps-page .ps-hero-media img{min-height:565px}
.ps-page .ps-hero-copy{padding-top:65px;padding-bottom:65px}
.ps-page .ps-hero h1{font-size:clamp(74px,7.8vw,116px);line-height:.87}
.ps-page .ps-hero .lede{font-size:clamp(18px,1.7vw,22px);line-height:1.44}
.ps-page .ps-choice,.ps-page .ps-process{padding-top:78px;padding-bottom:82px}
.ps-page .ps-section-head{margin-bottom:30px}
.ps-page .ps-section-head h2{font-size:clamp(57px,6.2vw,92px);line-height:.88}
.ps-page .ps-section-head p{font-size:17px;line-height:1.5}
.ps-page .ps-choice-card{min-height:215px}
.ps-page .ps-choice-card summary{min-height:195px;padding:21px}
.ps-page .ps-choice-card summary strong{font-size:clamp(36px,3.1vw,48px)}
.ps-page .ps-steps li{min-height:190px}
.ps-page .ps-final{padding:78px 0}
.ps-page .ps-final h2{font-size:clamp(62px,6.7vw,100px)}
.ps-page .ps-help h2{font-size:clamp(47px,5.4vw,75px)}

/* The news and match pages were already denser; adjust their rhythm only. */
.news-page .news-feature-section,.news-page .news-journal-section,.match-page .match-dashboard,.match-page .fixture-section,.match-page .ffbb-directory{padding-top:62px;padding-bottom:68px}
.news-page .news-section-heading h2{font-size:clamp(43px,4.1vw,61px)}
.match-page .match-dashboard-head h2,.match-page .fixture-intro h2{font-size:clamp(49px,4.8vw,69px)}

@media(max-width:900px){
  .shopfront-hero,.shopfront-grid{min-height:0}
  .shopfront-hero h1{font-size:clamp(105px,13vw,155px)}
  .shopfront-image{height:465px}
  .page-hero h1{font-size:clamp(75px,10vw,125px)}
  .teams-arena{min-height:0}
  .teams-visual{min-height:410px}
}
@media(max-width:700px){
  .hero{min-height:min(720px,94svh)}
  .hero-content{padding:145px 20px 85px}
  .hero h1{font-size:clamp(65px,16vw,104px);line-height:.83}
  .hero-sub{font-size:17px;line-height:1.45}
  .section{padding:60px 0}
  .section-title{font-size:clamp(49px,12vw,73px);line-height:.86}
  .match-section .section-title,.join .section-title{font-size:clamp(56px,13vw,83px)}
  .story,.story.small{min-height:390px}
  .home-news,.teams-section{padding:60px 0}
  .home-news-visual{min-height:235px;height:235px}
  .home-news-slide{min-height:0}
  .home-news-copy{min-height:310px;padding:23px}
  .home-news-copy h3{font-size:clamp(48px,11.5vw,67px)}
  .home-news-copy p{font-size:16px}
  .teams-heading h2{font-size:clamp(65px,16vw,95px)}
  .teams-visual{min-height:310px}
  .teams-visual-copy strong{font-size:clamp(43px,10vw,60px)}
  .ps-home.wide h2{font-size:clamp(61px,12vw,85px)}
  .club-footer-hero{padding:55px 0 60px}
  .club-footer-hero h2{font-size:clamp(69px,18vw,100px)}
  .club-footer-primary{min-height:48px;font-size:19px}

  .page-hero .wrap{padding:61px 0 0}
  .page-hero h1{font-size:clamp(69px,17vw,103px);line-height:.84}
  .page-hero .lede{font-size:18px;line-height:1.47}
  .page-hero-visual{height:245px;margin-top:32px}
  .page-section{padding:59px 0}
  .page-section h2,.section-head h2{font-size:clamp(48px,12vw,70px)}
  .section-head p{font-size:16px}
  .story-text{font-size:17px;line-height:1.55}
  .value-card{min-height:220px}
  .score-tile{min-height:245px}
  .team-entry{min-height:220px}
  .team-entry .giant{font-size:82px}
  .join-step{min-height:225px}
  .news-card{min-height:340px}
  .training-section,.club-faq,.club-life,.basket-rules,.volunteer-section,.club-partners,.president-word{padding-top:58px;padding-bottom:58px}
  .training-section .section-head h2,.club-faq .section-head h2,.club-life h2,.basket-rules h2,.all-results .section-head h2{font-size:clamp(48px,11.5vw,68px)}
  .volunteer-section h2,.club-partners h2,.club-outing h2,.join-monclub h2,.president-word h2{font-size:clamp(49px,11.5vw,70px)}

  .shopfront-grid{padding-top:60px}
  .shopfront-hero h1{font-size:clamp(82px,20vw,120px);line-height:.83}
  .shopfront-image{height:330px}
  .shop-collection,.shop-how,.shop-faq,.product-story{padding-top:60px;padding-bottom:65px}
  .shop-collection h2,.shop-how h2,.shop-faq h2,.product-story h2,.product-other h2,.shop-end h2{font-size:clamp(50px,11.5vw,70px)}
  .shop-card-stage{height:340px}
  .shop-card-copy h3{font-size:clamp(46px,10vw,59px)}
  .shop-how-grid>div{min-height:195px}
  .product-main-image{height:380px;min-height:0}
  .product-info h1{font-size:clamp(74px,17vw,110px)}
  .product-story-copy{font-size:17px}
  .contact-hero{min-height:0}
  .contact-hero-grid{padding:60px 0 0}
  .contact-hero h1{font-size:clamp(78px,18vw,125px)}
  .contact-body{padding-top:60px;padding-bottom:65px}
  .contact-body h2{font-size:clamp(53px,12vw,70px)}
  .contact-form h3{font-size:40px}

  .ps-page .ps-hero-grid{min-height:0}
  .ps-page .ps-hero-copy{padding:58px 0 50px}
  .ps-page .ps-hero h1{font-size:clamp(62px,14vw,93px);line-height:.87}
  .ps-page .ps-hero .lede{font-size:18px}
  .ps-page .ps-hero-media,.ps-page .ps-hero-media img{min-height:295px}
  .ps-page .ps-choice,.ps-page .ps-process{padding-top:60px;padding-bottom:65px}
  .ps-page .ps-section-head h2{font-size:clamp(55px,13vw,76px)}
  .ps-page .ps-choice-card{min-height:0}
  .ps-page .ps-choice-card summary{min-height:135px;padding:19px}
  .ps-page .ps-choice-card summary strong{font-size:43px}
  .ps-page .ps-final h2{font-size:clamp(59px,13vw,80px)}

  .news-page .news-feature-section,.news-page .news-journal-section,.match-page .match-dashboard,.match-page .fixture-section,.match-page .ffbb-directory{padding-top:51px;padding-bottom:56px}
  .news-page .news-section-heading h2{font-size:clamp(40px,10vw,50px)}
  .match-page .match-dashboard-head h2,.match-page .fixture-intro h2{font-size:clamp(44px,10.5vw,58px)}
}
@media(max-width:370px){
  .hero h1{font-size:63px}
  .page-hero h1{font-size:66px}
  .shopfront-hero h1{font-size:78px}
  .club-footer-hero h2{font-size:67px}
}
