/* DM Sans, self-hosted under SIL OFL 1.1. License: fonts/DM-Sans-OFL.txt.
   The approved comparison used these same variable-font files and weight range. */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('https://riseoncasa.com/wp-content/themes/riseon-casa/site/fonts/dm-sans-latin-ext-variable.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('https://riseoncasa.com/wp-content/themes/riseon-casa/site/fonts/dm-sans-latin-variable.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --rc-font-body: 'DM Sans', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', sans-serif;
  --rc-font-display: var(--rc-font-body);
  --sans: var(--rc-font-body);
  --serif: var(--rc-font-body);
}
body.rc-site {
  font-family: var(--rc-font-body);
  font-optical-sizing: auto;
  font-kerning: normal;
  font-weight: 400;
  letter-spacing: -.012em;
}
body.rc-site :is(h1, h2, h3, h4, .rc-about-statement, .rc-metric-value) {
  font-family: var(--rc-font-display);
  font-style: normal;
  font-weight: 500;
  letter-spacing: -.045em;
  line-height: 1.1;
}
body.rc-site :is(h1, h2, h3) { text-wrap: balance; }
body.rc-site :is(.rc-nav, .rc-header-actions, .rc-button, .rc-link) {
  font-family: var(--rc-font-body);
  font-weight: 500;
  letter-spacing: -.015em;
}
body.rc-site :is(.rc-time-eyebrow > span:first-child, .rc-catalog-hero-copy h1 > span) {
  font-style: normal;
}
body.rc-site :is(.rc-metric-value, [data-count], .rc-product-code, .rc-time-index) {
  font-family: var(--rc-font-body);
  font-variant-numeric: lining-nums tabular-nums;
}
body.rc-site .rc-brand { font-family: var(--rc-font-body); font-weight: 600; }
body.rc-site .rc-product-caption h3,
body.rc-site .rc-product-meta h3 { letter-spacing: -.025em; line-height: 1.35; }
body.rc-site .rc-about .rc-metric-value { font-size: clamp(26px, 3.3vw, 54px); font-weight: 500; letter-spacing: -.065em; line-height: 1.06; }
body.rc-site .rc-product-line-detail { font-weight: 400; letter-spacing: -.025em; }
body.rc-site .rc-film-copy h1 { letter-spacing: -.05em; line-height: 1.08; }
html[data-review-language=zh] body.rc-site :is(h1, h2, h3, .rc-about-statement) {
  letter-spacing: -.025em;
  line-height: 1.22;
}

/* Three owned-profile positions. No href is rendered until a real URL is supplied. */
.rc-social-rail {
  position: fixed;
  z-index: 65;
  left: max(16px, env(safe-area-inset-left));
  bottom: calc(58px + env(safe-area-inset-bottom));
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  width: 32px;
}
.rc-social-item {
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  display: grid;
  place-items: center;
  position: relative;
  border: 0;
  border-radius: 50%;
  background: #1d1d1f;
  color: #ffffff;
  box-shadow: 0 0 0 1px rgba(255,255,255,.2);
  text-decoration: none;
  transition: background-color .3s ease, transform .4s cubic-bezier(.22,.8,.24,1), box-shadow .3s ease;
}
.rc-social-item svg { display: block; width: 17px; height: 17px; pointer-events: none; }
.rc-social-item[aria-disabled=true] { cursor: default; }
.rc-social-item:hover,
.rc-social-item:focus-visible {
  background: var(--rc-accent);
  color: #ffffff;
  box-shadow: 0 0 0 5px rgba(29,29,31,.12);
  transform: translateY(-2px);
}
.rc-social-item:focus-visible { outline: 2px solid var(--rc-accent); outline-offset: 5px; }
@media (min-width: 761px) and (max-width: 1100px) {
  /* The tablet About layout has a 32px gutter; keep the rail inside it. */
  .rc-social-rail { left: max(4px, env(safe-area-inset-left)); width: 24px; }
  .rc-social-item { width: 24px; height: 24px; flex-basis: 24px; }
  .rc-social-item svg { width: 14px; height: 14px; }
}
@media (max-width: 760px) {
  body.rc-site .rc-about .rc-metric-value { font-size: clamp(26px, 7.8vw, 36px); }
  .rc-social-rail {
    flex-direction: row;
    width: auto;
    gap: 7px;
    left: max(12px, env(safe-area-inset-left));
    bottom: calc(49px + env(safe-area-inset-bottom));
  }
  body:has(.preview-bar) .rc-social-rail {
    bottom: calc(76px + env(safe-area-inset-bottom));
  }
  .rc-social-item { width: 28px; height: 28px; flex-basis: 28px; }
  .rc-social-item svg { width: 15px; height: 15px; }
  /* Keep mobile keyboards and enlarged navigation clear of floating decoration. */
  body:has(.rc-nav.is-open) .rc-social-rail,
  body:has(.rc-field :focus) .rc-social-rail { visibility: hidden; }
}
@media (prefers-reduced-motion: reduce) {
  .rc-social-item { transition: none; }
  .rc-social-item:hover { transform: none; }
}
.rc-motion-paused .rc-social-item { transition: none; }
.rc-motion-paused .rc-social-item:hover { transform: none; }
@media print { .rc-social-rail { display: none; } }
