
/* FIORAFIT CLUB · FLUIR V3
   Fullscreen hero + typography normalization + state controls */
body:has(.fluir-app),
body:has(.fluir-app) button,
body:has(.fluir-app) input,
body:has(.fluir-app) select,
body:has(.fluir-app) textarea{
  font-family:Montserrat,Arial,sans-serif!important;
}
.page:has(.fluir-app){
  max-width:none!important;
  width:100%!important;
  padding:0!important;
  margin:0!important;
  overflow-x:hidden!important;
}
.fluir-app{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0 0 80px!important;
}
.fluir-hero{
  width:100vw!important;
  min-height:calc(100svh - 72px)!important;
  height:calc(100svh - 72px)!important;
  margin:0!important;
  margin-left:calc(50% - 50vw)!important;
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  overflow:hidden!important;
  background-image:
    linear-gradient(180deg,rgba(248,244,239,.50),rgba(248,244,239,.68)),
    url('/assets/images/movements/fluir.jpg')!important;
  background-position:center 42%!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  border:0!important;
}
.fluir-hero:after{
  content:none!important;
}
.fluir-hero-copy{
  width:min(760px,calc(100% - 44px))!important;
  max-width:760px!important;
  padding:40px 22px!important;
  position:relative!important;
  z-index:2!important;
}
.fluir-hero-copy>span{
  display:block!important;
  margin:0 0 28px!important;
  font-family:Montserrat,Arial,sans-serif!important;
  font-size:10px!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:.30em!important;
  color:#A30167!important;
}
.fluir-hero h1{
  margin:0!important;
  font-family:Montserrat,Arial,sans-serif!important;
  font-size:clamp(82px,11vw,164px)!important;
  line-height:.84!important;
  font-weight:300!important;
  letter-spacing:-.07em!important;
  color:#493C34!important;
}
.fluir-hero strong{
  display:block!important;
  margin-top:34px!important;
  font-family:Montserrat,Arial,sans-serif!important;
  font-size:15px!important;
  line-height:1.3!important;
  font-weight:500!important;
  letter-spacing:.22em!important;
  color:#493C34!important;
}
.fluir-hero p{
  max-width:620px!important;
  margin:24px auto 0!important;
  font-family:Montserrat,Arial,sans-serif!important;
  font-size:14px!important;
  line-height:1.75!important;
  font-weight:400!important;
  letter-spacing:0!important;
  color:#66554c!important;
}
.fluir-checkin{
  width:min(900px,calc(100% - 40px))!important;
  max-width:900px!important;
  margin:76px auto 0!important;
  padding:0!important;
  text-align:center!important;
}
.fluir-checkin>small{
  display:block!important;
  margin:0 0 12px!important;
  font-size:9px!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:.22em!important;
  color:#A30167!important;
}
.fluir-checkin h2{
  margin:0!important;
  font-size:clamp(34px,4vw,52px)!important;
  line-height:1.08!important;
  font-weight:300!important;
  letter-spacing:-.045em!important;
  color:#493C34!important;
}
.fluir-checkin>p{
  margin:16px 0 0!important;
  font-size:13px!important;
  line-height:1.65!important;
  letter-spacing:0!important;
  color:#806f65!important;
}
.fluir-state-grid{
  width:min(680px,100%)!important;
  margin:30px auto 0!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}
.fluir-state-grid a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  min-height:48px!important;
  padding:0 16px!important;
  border:1px solid rgba(73,60,52,.16)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.55)!important;
  color:#493C34!important;
  text-decoration:none!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:.12em!important;
  white-space:nowrap!important;
  box-sizing:border-box!important;
}
.fluir-state-grid a:hover{
  border-color:#A30167!important;
  color:#A30167!important;
  background:#fff!important;
}
.fluir-intro,.fluir-entry-grid,.fluir-week-summary,
.fluir-recommendation,.fluir-flow{
  box-sizing:border-box!important;
}
.fluir-intro,.fluir-entry-grid,.fluir-week-summary,.fluir-recommendation{
  width:calc(100% - 40px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.fluir-flow{
  width:min(1000px,calc(100% - 40px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:760px){
  .fluir-app{padding-bottom:60px!important}
  .fluir-hero{
    min-height:calc(100svh - 64px)!important;
    height:calc(100svh - 64px)!important;
    background-position:58% center!important;
    background-image:
      linear-gradient(180deg,rgba(248,244,239,.42),rgba(248,244,239,.72)),
      url('/assets/images/movements/fluir.jpg')!important;
  }
  .fluir-hero-copy{width:calc(100% - 32px)!important;padding:30px 16px!important}
  .fluir-hero-copy>span{font-size:8px!important;letter-spacing:.25em!important;margin-bottom:22px!important}
  .fluir-hero h1{font-size:clamp(70px,24vw,100px)!important}
  .fluir-hero strong{margin-top:28px!important;font-size:11px!important;letter-spacing:.18em!important}
  .fluir-hero p{max-width:330px!important;margin-top:18px!important;font-size:12px!important;line-height:1.65!important}
  .fluir-checkin{width:calc(100% - 36px)!important;margin-top:52px!important}
  .fluir-checkin h2{font-size:36px!important}
  .fluir-state-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin-top:24px!important}
  .fluir-state-grid a{min-height:46px!important;font-size:9px!important;padding:0 10px!important}
  .fluir-intro,.fluir-entry-grid,.fluir-week-summary,.fluir-recommendation{
    width:calc(100% - 36px)!important;
  }
  .fluir-flow{width:calc(100% - 36px)!important}
}
