/* House of Reformer — website cohesion + native booking layer v1.0.35 */
:root{--hor-native-bone:#f6f0e8;--hor-native-paper:#fffdf9;--hor-native-soft:#eee4d9;--hor-native-mocha:#594234;--hor-native-mocha-2:#745a47;--hor-native-ink:#29221d;--hor-native-muted:#7b6e63;--hor-native-line:rgba(67,50,37,.12);--hor-native-shadow:0 26px 70px rgba(73,52,36,.10)}

/* Memberships / Class Packs — bring the catalogue in line with the rest of House. */
body.hor-has-offers-page{background:var(--hor-native-bone)!important}
body.hor-has-offers-page .page-content,body.hor-has-offers-page main{background:var(--hor-native-bone)!important}
.hor-offers-combined{background:linear-gradient(180deg,#faf7f2 0,var(--hor-native-bone) 24%,var(--hor-native-bone) 100%)!important;padding-bottom:clamp(70px,8vw,112px)!important}
.hor-offers-combined-hero{max-width:1080px!important;padding:clamp(72px,8vw,116px) 24px 34px!important}
.hor-offers-combined-hero:before{content:"WAYS TO MOVE";display:inline-flex;margin-bottom:18px;padding:8px 12px;border:1px solid var(--hor-native-line);border-radius:999px;background:rgba(255,255,255,.6);font:800 8px/1 Manrope,Arial,sans-serif;letter-spacing:.18em;color:var(--hor-native-mocha)}
.hor-offers-combined-hero>p{display:none!important}
.hor-offers-combined-hero h1{font-size:clamp(52px,7.5vw,88px)!important;line-height:.92!important;color:var(--hor-native-ink)!important}
.hor-offers-combined-hero h1:after{content:"Find the access that fits your real week — then book everything from the same House account.";display:block;max-width:670px;margin:22px auto 0;font:500 clamp(13px,1.6vw,16px)/1.75 Manrope,Arial,sans-serif;letter-spacing:0;color:var(--hor-native-muted)}
.hor-offers-combined-hero>span{display:none!important}
.hor-offers-switch{position:sticky;top:78px;z-index:30;width:min(500px,calc(100% - 28px))!important;margin-bottom:50px!important;padding:6px!important;background:rgba(255,253,249,.9)!important;box-shadow:0 12px 32px rgba(70,52,39,.07);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.hor-offers-switch button{padding:14px 18px!important;font-size:10px!important}.hor-offers-switch button.is-active{background:var(--hor-native-mocha)!important}
.hor-native-offer-bridge{max-width:1160px;margin:-18px auto 34px;padding:0 24px}.hor-native-offer-bridge-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 20px;border:1px solid var(--hor-native-line);border-radius:18px;background:rgba(255,253,249,.75)}.hor-native-offer-bridge span{display:grid;gap:3px}.hor-native-offer-bridge small{font:800 7px/1 Manrope,sans-serif;letter-spacing:.16em;color:var(--hor-native-mocha)}.hor-native-offer-bridge strong{font:500 19px/1.15 'Noto Serif Display',Georgia,serif}.hor-native-offer-bridge a{flex:0 0 auto;padding:11px 16px;border-radius:999px;background:var(--hor-native-mocha);color:#fff!important;text-decoration:none!important;font:800 8px/1 Manrope,sans-serif;letter-spacing:.07em;text-transform:uppercase}
.hor-offers--embedded .hor-offers-section-head{max-width:1160px!important;margin-bottom:24px!important}.hor-offers--embedded .hor-offers-section-head p{font-size:8px!important}.hor-offers--embedded .hor-offers-section-head h2{font-size:clamp(34px,4vw,48px)!important}
.hor-offer-compare-wrap{max-width:1160px!important;margin-bottom:42px!important}.hor-offer-compare{border-radius:20px!important;background:rgba(255,253,249,.7)!important;box-shadow:0 14px 36px rgba(72,54,40,.045)}.hor-offer-compare-item{min-height:150px!important;padding:21px!important}.hor-offer-compare-item b{font-size:31px!important}.hor-offer-compare-item.is-recommended{background:linear-gradient(145deg,rgba(89,66,52,.12),rgba(255,253,249,.9))!important}
.hor-offer-card{border-radius:28px!important;border-color:var(--hor-native-line)!important;background:var(--hor-native-paper)!important;box-shadow:0 18px 44px rgba(72,53,39,.055)!important}.hor-offer-card:hover{box-shadow:var(--hor-native-shadow)!important}.hor-offer-card--feature{background:linear-gradient(145deg,#5b4435 0,#463326 100%)!important;color:#fffaf4!important;border:0!important;box-shadow:0 32px 76px rgba(57,40,29,.20)!important}.hor-offer-card--feature .hor-offer-body{padding:clamp(34px,5vw,64px)!important}.hor-offer-card--feature .hor-offer-meta-line{border-color:rgba(255,255,255,.15)!important}.hor-offer-card--feature .hor-offer-meta-line span{background:rgba(255,255,255,.11)!important;color:#f5eade!important}.hor-offer-card--feature .hor-offer-meta-line strong,.hor-offer-card--feature .hor-offer-top>p,.hor-offer-card--feature .hor-offer-description,.hor-offer-card--feature .hor-offer-price-line span,.hor-offer-card--feature .hor-offer-scope>span{color:#e9ddd1!important}.hor-offer-card--feature .hor-offer-top h2,.hor-offer-card--feature .hor-offer-price-line strong,.hor-offer-card--feature .hor-offer-facts strong,.hor-offer-card--feature .hor-offer-highlight b,.hor-offer-card--feature .hor-offer-cta strong{color:#fffaf4!important}.hor-offer-card--feature .hor-offer-price-line{border-color:rgba(255,255,255,.15)!important}.hor-offer-card--feature .hor-offer-facts>span{background:rgba(255,255,255,.09)!important}.hor-offer-card--feature .hor-offer-facts small{color:#d8c8ba!important}.hor-offer-card--feature .hor-offer-highlight{background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.13)!important}.hor-offer-card--feature .hor-offer-highlight span{color:#dfd1c5!important}.hor-offer-card--feature .hor-offer-tags em{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.16)!important;color:#f3e8dd!important}.hor-offer-card--feature .hor-offer-cta small{color:#dfd1c5!important}.hor-offer-card--feature .hor-offer-cta b{background:#fffaf4!important;color:var(--hor-native-mocha)!important}
.hor-offer-meta-line span{font-size:7px!important}.hor-offer-top h2{font-size:clamp(32px,3vw,42px)!important}.hor-offer-description{font-size:10.5px!important;line-height:1.7!important}.hor-offer-price-line{margin:24px 0 18px!important}.hor-offer-price-line strong{font-size:42px!important}.hor-offer-facts>span{border:1px solid rgba(67,50,37,.05)}.hor-offer-highlight{border-radius:14px!important}.hor-offer-tags em{font-size:7.2px!important;padding:8px 10px!important}.hor-offer-cta{margin-top:12px!important;padding:18px 18px 0!important;border-top:1px solid var(--hor-native-line)!important}.hor-offer-cta strong{font-size:9.5px!important}.hor-offer-cta b{width:50px!important;height:50px!important;flex-basis:50px!important;background:var(--hor-native-mocha)!important}
.hor-offers-grid{max-width:1160px!important;gap:20px!important}.hor-offers-grid--secondary{grid-template-columns:repeat(2,minmax(0,1fr))!important}.hor-offers-more-head{max-width:1160px!important;margin-top:12px!important}.hor-offers-footer{max-width:1112px!important}

/* Booking/member area — make the web journey feel like the app, not a bolted-on widget. */
body.hor-has-booking-page{background:linear-gradient(180deg,#f7f2eb 0,#f3ece4 100%)!important}
.hor-native-booking-hero{width:min(1180px,calc(100% - 28px));margin:0 auto 24px;padding:clamp(52px,7vw,88px) clamp(22px,4vw,50px) clamp(34px,5vw,54px);border-radius:0 0 30px 30px;background:linear-gradient(135deg,#efe4d8 0,#faf6f1 60%,#f5eee6 100%);border:1px solid var(--hor-native-line);border-top:0;overflow:hidden;position:relative}.hor-native-booking-hero:after{content:"HOR";position:absolute;right:-14px;bottom:-54px;font:400 clamp(120px,18vw,250px)/.8 'Noto Serif Display',Georgia,serif;color:rgba(89,66,52,.045);pointer-events:none}.hor-native-booking-hero small{display:block;margin-bottom:12px;font:800 8px/1 Manrope,sans-serif;letter-spacing:.2em;color:var(--hor-native-mocha)}.hor-native-booking-hero h1{max-width:760px;margin:0;font:400 clamp(44px,6vw,72px)/.96 'Noto Serif Display',Georgia,serif;letter-spacing:-.04em;color:var(--hor-native-ink)}.hor-native-booking-hero h1 em{font-weight:300;color:var(--hor-native-mocha)}.hor-native-booking-hero p{max-width:650px;margin:18px 0 0;font:500 14px/1.75 Manrope,sans-serif;color:var(--hor-native-muted)}.hor-native-booking-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.hor-native-booking-chips span{padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.55);border:1px solid var(--hor-native-line);font:700 8px/1 Manrope,sans-serif;letter-spacing:.05em;color:var(--hor-native-mocha)}
.hor-has-booking-page .hor-fe{width:min(1180px,calc(100% - 28px))!important;margin-bottom:clamp(70px,8vw,110px)!important}.hor-has-booking-page .hor-fe-app-shell,.hor-has-booking-page .hor-fe-login-shell{border-radius:30px!important;border-color:var(--hor-native-line)!important;box-shadow:0 30px 80px rgba(73,52,36,.10)!important}.hor-has-booking-page .hor-fe-memberbar{background:linear-gradient(135deg,#5b4435,#493527)!important;color:#fffaf4!important}.hor-has-booking-page .hor-fe-memberbar-copy span,.hor-has-booking-page .hor-fe-memberbar-copy strong,.hor-has-booking-page .hor-fe-memberbar-actions>a{color:#fffaf4!important}.hor-has-booking-page .hor-fe-workspace{background:#fffdf9!important}.hor-has-booking-page .hor-fe-tabs{background:rgba(255,253,249,.94)!important}.hor-has-booking-page .hor-fe-tab.active{background:var(--hor-native-mocha)!important;border-color:var(--hor-native-mocha)!important}.hor-has-booking-page .hor-fe-btn{border-radius:999px!important}.hor-has-booking-page .hor-fe-card{border-radius:20px!important}.hor-has-booking-page .hor-fe-package-card.is-highlighted{box-shadow:0 0 0 3px rgba(89,66,52,.18),0 20px 50px rgba(72,53,39,.10)!important}.hor-has-booking-page .hor-fe-package-card .hor-fe-btn{min-height:48px!important}.hor-has-booking-page .hor-fe-panel .hor-fe-section-head{max-width:790px!important}.hor-native-back-offers{display:inline-flex!important;align-items:center;gap:7px;margin:0 0 18px;padding:9px 13px;border:1px solid var(--hor-native-line);border-radius:999px;background:#fffdf9;color:var(--hor-native-mocha)!important;text-decoration:none!important;font:800 8px/1 Manrope,sans-serif;letter-spacing:.06em;text-transform:uppercase}

/* Better focus and tap feedback across House-generated surfaces. */
.hor-offer-cta:focus-visible,.hor-offer-compare-item:focus-visible,.hor-native-offer-bridge a:focus-visible,.hor-fe button:focus-visible,.hor-fe a:focus-visible{outline:3px solid rgba(89,66,52,.28)!important;outline-offset:3px!important}

@media(max-width:760px){.hor-offers-combined-hero{padding-top:58px!important}.hor-offers-combined-hero h1{font-size:52px!important}.hor-offers-switch{top:66px!important;margin-bottom:34px!important}.hor-native-offer-bridge{padding:0 14px;margin-top:-6px}.hor-native-offer-bridge-inner{align-items:flex-start;flex-direction:column}.hor-native-offer-bridge a{width:100%;text-align:center;padding:13px 16px}.hor-offers-grid--secondary{grid-template-columns:1fr!important}.hor-offer-card--feature .hor-offer-body{padding:28px 22px!important}.hor-native-booking-hero{width:calc(100% - 20px);padding:46px 22px 34px;border-radius:0 0 24px 24px}.hor-native-booking-hero h1{font-size:46px}.hor-has-booking-page .hor-fe{width:calc(100% - 20px)!important}.hor-has-booking-page .hor-fe-app-shell,.hor-has-booking-page .hor-fe-login-shell{border-radius:23px!important}.hor-has-booking-page .hor-fe-tabs{position:sticky;top:64px!important;padding:9px 11px!important}.hor-has-booking-page .hor-fe-panels{padding:24px 16px 30px!important}}
@media(max-width:390px){.hor-offers-combined-hero h1{font-size:46px!important}.hor-native-booking-hero h1{font-size:41px}}
@media(prefers-reduced-motion:reduce){.hor-offer-card,.hor-offer-cta b{transition:none!important}}

/* v1.0.37 — wide-screen booking alignment + public brand cleanup.
 * Keep the entire member experience centred inside the page and never expose
 * the internal HOR abbreviation as decorative customer-facing branding. */
.hor-has-booking-page .hor-fe{
  width:min(1180px,calc(100% - 28px))!important;
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.hor-has-booking-page .hor-native-booking-hero{
  margin-left:auto!important;
  margin-right:auto!important;
}
.hor-native-booking-hero::after{
  content:none!important;
  display:none!important;
}
@media(max-width:760px){
  .hor-has-booking-page .hor-fe{
    width:calc(100% - 20px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}


/* v1.0.39 — live capacity-based timetable colour depth + memberbar contrast.
 * Class colour is driven by how full each occurrence actually is, never by its
 * position in the list. Plenty of space stays pale; the card warms and darkens
 * as the class fills; full/waitlist classes use the deepest House mocha. */
.hor-has-booking-page .hor-fe-workspace{
  background:linear-gradient(180deg,#fffdf9 0%,#fbf5ee 62%,#f5ece3 100%)!important;
}
.hor-has-booking-page .hor-fe-panels{
  background:linear-gradient(180deg,#fffdf9 0%,#fbf5ee 72%,#f5ece3 100%)!important;
}
.hor-has-booking-page .hor-fe-day-cards,
.hor-has-booking-page .hor-fe-category-session-list{
  display:grid;
  gap:10px;
  padding-bottom:8px;
}
.hor-has-booking-page .hor-fe-class-row{
  transition:background .22s ease,border-color .22s ease,box-shadow .22s ease,color .22s ease!important;
}
/* Lots of capacity — almost paper-white. */
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="open"]{
  background:#fffaf4!important;
  border-color:rgba(89,66,52,.10)!important;
}
/* Filling gently. */
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="low"]{
  background:#f5e9df!important;
  border-color:rgba(89,66,52,.12)!important;
}
/* Around half to two-thirds full. */
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="medium"]{
  background:#dfc7b5!important;
  border-color:rgba(89,66,52,.16)!important;
}
/* Getting busy. */
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="high"]{
  background:#ba9479!important;
  border-color:rgba(89,66,52,.18)!important;
  box-shadow:0 10px 26px rgba(73,52,36,.06)!important;
}
/* Nearly full. */
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="critical"]{
  background:linear-gradient(135deg,#886852 0%,#74543f 100%)!important;
  border-color:rgba(72,49,33,.20)!important;
  box-shadow:0 12px 30px rgba(73,52,36,.09)!important;
}
/* No places left / waitlist. */
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="full"]{
  background:linear-gradient(135deg,#644a39 0%,#4f392c 100%)!important;
  border-color:rgba(62,42,29,.24)!important;
  box-shadow:0 14px 34px rgba(55,37,25,.12)!important;
}
/* High and above use a light foreground for reliable contrast. */
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="high"] .hor-fe-class-row-time>strong,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="high"] .hor-fe-class-name,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="critical"] .hor-fe-class-row-time>strong,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="critical"] .hor-fe-class-name,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="full"] .hor-fe-class-row-time>strong,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="full"] .hor-fe-class-name{
  color:#fffaf4!important;
}
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="high"] .hor-fe-class-row-time>small,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="high"] .hor-fe-class-row-time>span,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="high"] .hor-fe-class-row-meta,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="critical"] .hor-fe-class-row-time>small,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="critical"] .hor-fe-class-row-time>span,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="critical"] .hor-fe-class-row-meta,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="full"] .hor-fe-class-row-time>small,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="full"] .hor-fe-class-row-time>span,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="full"] .hor-fe-class-row-meta{
  color:#efe3d8!important;
}
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="high"] .hor-fe-class-type,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="critical"] .hor-fe-class-type,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="full"] .hor-fe-class-type{
  background:rgba(255,255,255,.13)!important;
  color:#fff7ef!important;
}
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="high"] .hor-fe-view-class,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="critical"] .hor-fe-view-class,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="full"] .hor-fe-view-class{
  background:#fffaf4!important;
  border-color:#fffaf4!important;
  color:#4f392a!important;
  -webkit-text-fill-color:#4f392a!important;
}
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="high"] .hor-fe-pill,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="critical"] .hor-fe-pill,
.hor-has-booking-page .hor-fe-class-row[data-hor-occupancy="full"] .hor-fe-pill{
  border-color:rgba(255,255,255,.20)!important;
}

/* 'My bookings' must remain readable against the mocha member bar. */
.hor-has-booking-page .hor-fe-memberbar .hor-fe-memberbar-bookings{
  min-height:36px!important;
  padding:0 15px!important;
  border:1px solid rgba(255,255,255,.30)!important;
  background:#f1e4d8!important;
  color:#34261d!important;
  -webkit-text-fill-color:#34261d!important;
  box-shadow:0 7px 18px rgba(35,24,17,.13)!important;
  font-weight:800!important;
}
.hor-has-booking-page .hor-fe-memberbar .hor-fe-memberbar-bookings:hover,
.hor-has-booking-page .hor-fe-memberbar .hor-fe-memberbar-bookings:focus-visible{
  background:#fffaf4!important;
  color:#2b2019!important;
  -webkit-text-fill-color:#2b2019!important;
}

@media(max-width:760px){
  .hor-has-booking-page .hor-fe-workspace,
  .hor-has-booking-page .hor-fe-panels{
    background:linear-gradient(180deg,#fffdf9 0%,#f8f0e8 100%)!important;
  }
}

/* v1.0.41 — immersive animated member login / registration experience */
.hor-native-login-active .hor-native-booking-hero,
.hor-native-login-active .hor-native-back-offers{display:none!important}
.hor-native-login-active .hor-fe{
  width:min(1120px,calc(100% - 30px))!important;
  margin-top:clamp(40px,6vw,86px)!important;
  margin-bottom:clamp(72px,9vw,130px)!important;
}
.hor-native-login-active .hor-fe-login-shell{
  min-height:640px!important;
  grid-template-columns:minmax(0,1.06fr) minmax(390px,.94fr)!important;
  border:1px solid rgba(69,48,34,.10)!important;
  border-radius:34px!important;
  background:#fffaf5!important;
  box-shadow:0 38px 110px rgba(67,46,31,.16)!important;
  overflow:hidden!important;
  animation:horLoginShellIn .75s cubic-bezier(.2,.8,.2,1) both;
}
.hor-native-login-active .hor-fe-login-shell::before{
  opacity:.035!important;
}
.hor-native-login-active .hor-fe-login-wordmark{display:none!important}
.hor-native-login-active .hor-fe-login-editorial{
  position:relative!important;
  isolation:isolate;
  min-height:640px!important;
  justify-content:flex-end!important;
  padding:clamp(44px,6vw,76px)!important;
  background:
    radial-gradient(circle at 18% 18%,rgba(225,199,172,.32),transparent 30%),
    radial-gradient(circle at 82% 80%,rgba(151,116,89,.40),transparent 34%),
    linear-gradient(145deg,#2f221a 0%,#513b2d 45%,#7f624d 100%)!important;
  color:#fff8f1!important;
  overflow:hidden!important;
}
.hor-native-login-active .hor-fe-login-editorial::before{
  content:"";
  position:absolute;
  inset:-35%;
  z-index:-2;
  background:conic-gradient(from 20deg,transparent 0 26%,rgba(255,245,234,.13) 34%,transparent 44% 70%,rgba(205,169,138,.16) 78%,transparent 88%);
  filter:blur(18px);
  animation:horLoginAurora 18s linear infinite;
}
.hor-native-login-active .hor-fe-login-editorial::after{
  content:""!important;
  position:absolute!important;
  width:360px!important;
  height:360px!important;
  right:-135px!important;
  bottom:-145px!important;
  border-radius:50%!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 0 0 56px rgba(255,255,255,.028),0 0 0 112px rgba(255,255,255,.018)!important;
  background:radial-gradient(circle,rgba(255,244,231,.13),transparent 68%)!important;
  pointer-events:none!important;
  animation:horLoginPulse 7s ease-in-out infinite!important;
}
.hor-native-login-active .hor-fe-login-editorial>*:not(.hor-native-login-motion){position:relative;z-index:2}
.hor-native-login-active .hor-fe-login-editorial .hor-fe-section-eyebrow{
  color:#e8d5c5!important;
  margin-bottom:16px!important;
}
.hor-native-login-active .hor-fe-login-editorial h2{
  max-width:610px!important;
  margin:0!important;
  font-size:clamp(48px,5.6vw,76px)!important;
  line-height:.93!important;
  letter-spacing:-.048em!important;
  color:#fffaf4!important;
  text-wrap:balance;
  animation:horLoginTextIn .82s .12s cubic-bezier(.2,.8,.2,1) both;
}
.hor-native-login-active .hor-fe-login-editorial h2 em{
  display:block;
  margin-top:5px;
  color:#ead3bd!important;
  font-weight:300!important;
}
.hor-native-login-active .hor-fe-login-editorial>p:last-of-type{
  max-width:485px!important;
  margin:26px 0 0!important;
  color:rgba(255,248,241,.75)!important;
  font-size:14px!important;
  line-height:1.8!important;
  animation:horLoginTextIn .82s .22s cubic-bezier(.2,.8,.2,1) both;
}
.hor-native-login-active .hor-fe-login-points{
  gap:9px!important;
  margin-top:30px!important;
  animation:horLoginTextIn .82s .32s cubic-bezier(.2,.8,.2,1) both;
}
.hor-native-login-active .hor-fe-login-points span{
  padding:9px 12px!important;
  border:1px solid rgba(255,255,255,.17)!important;
  background:rgba(255,255,255,.075)!important;
  color:#fff8f1!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.hor-native-login-motion{position:absolute!important;inset:0!important;z-index:-1!important;pointer-events:none!important;overflow:hidden!important}
.hor-native-login-motion i{position:absolute;display:block;border-radius:999px;background:rgba(247,225,204,.12);filter:blur(1px)}
.hor-native-login-motion i:nth-child(1){width:190px;height:190px;left:8%;top:11%;animation:horLoginFloatA 9s ease-in-out infinite}
.hor-native-login-motion i:nth-child(2){width:84px;height:84px;right:14%;top:24%;background:rgba(255,255,255,.10);animation:horLoginFloatB 7.5s ease-in-out infinite}
.hor-native-login-motion i:nth-child(3){width:128px;height:128px;left:38%;bottom:13%;background:rgba(220,178,141,.11);animation:horLoginFloatC 11s ease-in-out infinite}

.hor-native-login-active .hor-fe-login-card{
  position:relative!important;
  padding:clamp(44px,5vw,68px)!important;
  background:
    radial-gradient(circle at 90% 0,rgba(209,180,154,.18),transparent 28%),
    linear-gradient(180deg,#fffdf9 0%,#fbf4ed 100%)!important;
  animation:horLoginCardIn .8s .08s cubic-bezier(.2,.8,.2,1) both;
}
.hor-native-login-active .hor-fe-login-card::before{
  content:"";
  position:absolute;
  width:110px;
  height:4px;
  top:34px;
  right:42px;
  border-radius:999px;
  background:linear-gradient(90deg,#5d4333 0 38%,#c4a88f 38% 67%,#eadfd5 67% 100%);
  opacity:.85;
}
.hor-native-login-active .hor-fe-login-card .hor-fe-section-eyebrow{margin-bottom:12px!important;color:#7a5c47!important}
.hor-native-login-active .hor-fe-login-card h3{
  margin-bottom:12px!important;
  font-size:clamp(38px,4vw,52px)!important;
  color:#2d211a!important;
}
.hor-native-login-active .hor-fe-login-copy{margin-bottom:30px!important;font-size:13px!important;line-height:1.75!important;color:#78695f!important}
.hor-native-login-active .hor-fe-login-card .hor-fe-field label{
  margin-bottom:8px!important;
  font-size:9px!important;
  font-weight:800!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
  color:#5e493b!important;
}
.hor-native-login-active .hor-fe-login-card input{
  min-height:54px!important;
  padding:0 17px!important;
  border:1px solid rgba(79,57,42,.13)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.80)!important;
  color:#2b2019!important;
  box-shadow:0 7px 20px rgba(63,45,32,.035)!important;
  transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease,background .22s ease!important;
}
.hor-native-login-active .hor-fe-login-card input:focus{
  outline:none!important;
  border-color:#9b7b62!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(155,123,98,.12),0 12px 28px rgba(63,45,32,.06)!important;
  transform:translateY(-1px);
}
.hor-native-login-active .hor-fe-login-card .hor-fe-btn-full{
  position:relative!important;
  overflow:hidden!important;
  min-height:55px!important;
  border:0!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#4a3427,#725542)!important;
  color:#fffaf4!important;
  box-shadow:0 15px 30px rgba(70,49,35,.22)!important;
  transition:transform .22s ease,box-shadow .22s ease!important;
}
.hor-native-login-active .hor-fe-login-card .hor-fe-btn-full::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.16) 47%,transparent 72%);
  transform:translateX(-120%);
  animation:horLoginButtonShine 4.8s 1.2s ease-in-out infinite;
}
.hor-native-login-active .hor-fe-login-card .hor-fe-btn-full:hover{transform:translateY(-2px)!important;box-shadow:0 19px 36px rgba(70,49,35,.28)!important}
.hor-native-login-active .hor-fe-login-card .hor-fe-btn-full span{display:inline-block;transition:transform .2s ease}
.hor-native-login-active .hor-fe-login-card .hor-fe-btn-full:hover span{transform:translateX(4px)}
.hor-native-login-active .hor-fe-login-card .hor-fe-error{margin-top:3px!important}
.hor-native-login-active .hor-fe-tour-link{
  margin-top:13px!important;
  color:#705443!important;
  font-size:11px!important;
  font-weight:700!important;
}
.hor-native-login-active .hor-native-forgot-password{margin-top:17px!important;text-align:right!important;font-size:10px!important;font-weight:700!important}
.hor-native-login-active .hor-native-forgot-password a{color:#80614d!important;text-decoration:none!important}
.hor-native-login-active .hor-native-forgot-password a:hover{text-decoration:underline!important}

@keyframes horLoginShellIn{from{opacity:0;transform:translateY(22px) scale(.985)}to{opacity:1;transform:none}}
@keyframes horLoginCardIn{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:none}}
@keyframes horLoginTextIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes horLoginAurora{to{transform:rotate(360deg)}}
@keyframes horLoginPulse{0%,100%{transform:scale(.96);opacity:.65}50%{transform:scale(1.07);opacity:1}}
@keyframes horLoginFloatA{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(42px,24px,0)}}
@keyframes horLoginFloatB{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(-28px,42px,0)}}
@keyframes horLoginFloatC{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(25px,-35px,0)}}
@keyframes horLoginButtonShine{0%,68%{transform:translateX(-120%)}86%,100%{transform:translateX(120%)}}

@media(max-width:820px){
  .hor-native-login-active .hor-fe{width:calc(100% - 20px)!important;margin-top:24px!important}
  .hor-native-login-active .hor-fe-login-shell{grid-template-columns:1fr!important;min-height:0!important;border-radius:26px!important}
  .hor-native-login-active .hor-fe-login-editorial{min-height:310px!important;justify-content:flex-end!important;padding:34px 26px!important}
  .hor-native-login-active .hor-fe-login-editorial h2{font-size:clamp(42px,12vw,58px)!important}
  .hor-native-login-active .hor-fe-login-editorial>p:last-of-type{margin-top:18px!important}
  .hor-native-login-active .hor-fe-login-points{margin-top:20px!important}
  .hor-native-login-active .hor-fe-login-card{padding:42px 24px 34px!important}
  .hor-native-login-active .hor-fe-login-card::before{top:24px;right:26px;width:78px}
}
@media(max-width:520px){
  .hor-native-login-active .hor-fe-login-points{display:flex!important}
  .hor-native-login-active .hor-fe-login-points span{font-size:7px!important;padding:7px 9px!important}
}
@media(prefers-reduced-motion:reduce){
  .hor-native-login-active .hor-fe-login-shell,
  .hor-native-login-active .hor-fe-login-editorial h2,
  .hor-native-login-active .hor-fe-login-editorial>p:last-of-type,
  .hor-native-login-active .hor-fe-login-points,
  .hor-native-login-active .hor-fe-login-card,
  .hor-native-login-motion i,
  .hor-native-login-active .hor-fe-login-editorial::before,
  .hor-native-login-active .hor-fe-login-editorial::after,
  .hor-native-login-active .hor-fe-login-card .hor-fe-btn-full::before{animation:none!important}
}
