/* Manrope · latin-ext · SIL OFL 1.1; see fonts/Manrope-OFL.txt. */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(/fonts/manrope-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;
}

/* Manrope · latin · SIL OFL 1.1; see fonts/Manrope-OFL.txt. */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(/fonts/manrope-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;
}

/* Newsreader · latin-ext · SIL OFL 1.1; see fonts/Newsreader-OFL.txt. */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(/fonts/newsreader-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;
}

/* Newsreader · latin · SIL OFL 1.1; see fonts/Newsreader-OFL.txt. */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(/fonts/newsreader-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;
}

/* Shared glass and type layer. Page styles retain their own geometry. */
:root {
  --rc-font-display: 'Newsreader', 'Iowan Old Style', 'Palatino Linotype', 'Songti SC', Georgia, serif;
  --rc-font-body: 'Manrope', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  --rc-paper: #ffffff;
  --rc-ink: #1d1d1f;
  --rc-accent: #1d1d1f;
  --rc-muted: #6e6e73;
  --rc-line: rgba(29, 29, 31, .17);
  --rc-glass-surface: rgba(245, 245, 247, .68);
  --rc-glass-strong: rgba(245, 245, 247, .84);
  --rc-glass-edge: rgba(255, 255, 255, .82);
  --rc-glass-burgundy: rgba(29, 29, 31, .34);
  --rc-glass-charcoal: rgba(29, 29, 31, .19);
  --rc-glass-shadow: 0 24px 64px -42px rgba(29, 29, 31, .48), inset 0 1px 0 rgba(255, 255, 255, .68), inset 0 -1px 0 rgba(29,29,31,.10);
  --rc-glass-blur: 20px;
  --rc-glass-panel-fill: linear-gradient(132deg, rgba(245, 245, 247, .64), rgba(245, 245, 247, .42));
  --rc-glass-panel-border: rgba(255, 255, 255, .64);
}
body.rc-site {
  font-family: var(--rc-font-body);
  font-weight: 400;
  color: var(--rc-ink);
  background: linear-gradient(137deg, #ffffff 0%, #f5f5f7 48%, #ffffff 100%);
  isolation: isolate;
}
/* Fixed light fields are deliberately static: visible warmth without a moving full-screen filter. */
body.rc-site::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(ellipse 70% 54% at 6% 4%, rgba(255,255,255,.96) 0, rgba(255,255,255,0) 72%),
    radial-gradient(ellipse 57% 66% at 101% 24%, rgba(29,29,31,.25) 0, rgba(29,29,31,0) 72%),
    radial-gradient(ellipse 62% 58% at 12% 98%, rgba(29,29,31,.14) 0, rgba(29,29,31,0) 70%),
    radial-gradient(ellipse 46% 48% at 72% 76%, rgba(245,245,247,.64) 0, rgba(245,245,247,0) 72%);
}
.rc-site > main { background: transparent; }
@media print { body.rc-site::before { display: none; } }
.rc-site :where(button, input, textarea, select) { font-family: var(--rc-font-body); }
.rc-site :where(h1, h2, h3, .rc-metric-value, .rc-home-facts [data-count]) {
  font-family: var(--rc-font-display);
  font-weight: 400;
  font-optical-sizing: auto;
  font-kerning: normal;
  letter-spacing: -.035em;
}
.rc-site :where(h1, h2, h3) { text-wrap: balance; }
.rc-site :where(p, figcaption, label) { text-wrap: pretty; }
.rc-site :where(.rc-metric-value, [data-count]) { font-variant-numeric: lining-nums tabular-nums; }
.rc-site :where(.rc-nav, .rc-header-actions, .rc-button, .rc-link) { font-family: var(--rc-font-body); }
.rc-site .rc-brand { font-family: var(--rc-font-body); font-weight: 600; letter-spacing: .14em; }
.rc-site .rc-header {
  background: var(--rc-header-surface, rgba(245, 245, 247, .76));
  border-bottom: 1px solid rgba(255,255,255,.74);
  box-shadow: 0 12px 36px -30px rgba(29,29,31,.58), inset 0 -1px 0 rgba(29,29,31,.11);
  backdrop-filter: blur(var(--rc-glass-blur)) saturate(112%);
  -webkit-backdrop-filter: blur(var(--rc-glass-blur)) saturate(112%);
}
.rc-site .rc-header.is-scrolled { background: var(--rc-header-scrolled-surface, rgba(245, 245, 247, .88)); }
.rc-glass-panel,
.rc-site :where(.rc-category-menu, .rc-catalog-menu, .rc-mega-menu, .rc-catalog-dropdown, .rc-lightbox, .rc-product-dialog, .rc-selection-dialog) {
  background: var(--rc-glass-panel-fill);
  border: 1px solid var(--rc-glass-panel-border);
  box-shadow: var(--rc-glass-shadow);
  backdrop-filter: blur(22px) saturate(108%);
  -webkit-backdrop-filter: blur(22px) saturate(108%);
}
.rc-glass-dark { --rc-glass-surface: rgba(29, 29, 31, .57); --rc-glass-strong: rgba(29, 29, 31, .79); --rc-glass-edge: rgba(255, 255, 255, .22); color: var(--rc-paper); }

/* Page-specific glass is limited to useful reading and control surfaces. */
.rc-site[data-page=home] .rc-time-dock,
.rc-site[data-page=home] .rc-home-category,
.rc-site[data-page=catalog] .rc-catalog-categories,
.rc-site[data-page=about] .rc-about-hero-image,
.rc-site[data-page=about] .rc-metrics,
.rc-site[data-page=contact] :where(.rc-contact-form-wrap, .rc-contact-summary, .rc-contact-selection),
.rc-site[data-page=contact] .rc-contact-map-address {
  background: var(--rc-glass-panel-fill);
  border: 1px solid var(--rc-glass-panel-border);
  box-shadow: var(--rc-glass-shadow);
  backdrop-filter: blur(18px) saturate(112%);
  -webkit-backdrop-filter: blur(18px) saturate(112%);
}
.rc-site[data-page=home] .rc-time-dock {
  background: linear-gradient(125deg, rgba(29,29,31,.58), rgba(29,29,31,.40));
  border-color: rgba(255,255,255,.32);
  box-shadow: 0 18px 55px -34px rgba(9,9,9,.78), inset 0 1px 0 rgba(255,255,255,.30), inset 0 -1px 0 rgba(29,29,31,.28);
  backdrop-filter: blur(22px) saturate(122%);
  -webkit-backdrop-filter: blur(22px) saturate(122%);
}
.rc-site[data-page=home] .rc-life-marquee,
.rc-site[data-page=home] .rc-home-cta,
.rc-site[data-page=about] .rc-about-rail-section {
  background: linear-gradient(118deg, rgba(245,245,247,.56), rgba(245,245,247,.32) 54%, rgba(29,29,31,.055));
  border-color: rgba(255,255,255,.76);
}
.rc-site[data-page=catalog] .rc-catalog-categories { padding: clamp(16px, 2vw, 24px); }
.rc-site[data-page=contact] .rc-contact-form-wrap { padding: clamp(22px, 3vw, 38px); }
.rc-site[data-page=contact] .rc-contact-selection { padding: 22px; }
/* The three Home scene plates stay photographically clean; only their compact controls are glass. */
.rc-site[data-page=home] :where(.rc-time-chapter, .rc-time-media, .rc-time-lift, .rc-time-camera, .rc-time-frame) {
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.rc-site :where(.rc-button) {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .015em;
  background-color: rgba(29, 29, 31, .92);
  border-color: rgba(29, 29, 31, .65);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .14);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.rc-site :where(.rc-icon-button) {
  background-color: rgba(245, 245, 247, .46);
  border-color: rgba(29, 29, 31, .22);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.rc-site :where(.rc-icon-button, .rc-button, .rc-link):focus-visible { outline: 2px solid var(--rc-accent); outline-offset: 4px; }
.rc-site :where(.rc-field input, .rc-field textarea) {
  background: rgba(255, 255, 255, .37);
  border: 1px solid rgba(29, 29, 31, .19);
  border-radius: 2px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .64);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.rc-site :where(.rc-field input, .rc-field textarea):focus { border-color: var(--rc-accent); background: rgba(255, 255, 255, .68); }
.rc-site .rc-footer { background: rgba(245, 245, 247, .66); border-top: 1px solid rgba(255,255,255,.78); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); }
.rc-site :where(dialog)::backdrop { background: rgba(29, 29, 31, .34); backdrop-filter: blur(7px); -webkit-backdrop-filter: blur(7px); }
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .rc-site .rc-header, .rc-glass-panel,
  .rc-site :where(.rc-category-menu, .rc-catalog-menu, .rc-mega-menu, .rc-catalog-dropdown, .rc-lightbox, .rc-product-dialog, .rc-selection-dialog) { background: #ffffff; }
  .rc-site[data-page=home] .rc-time-dock { background: rgba(29, 29, 31, .94); }
  .rc-site[data-page=home] .rc-home-category,
  .rc-site[data-page=catalog] .rc-catalog-categories,
  .rc-site[data-page=about] .rc-about-hero-image,
  .rc-site[data-page=about] .rc-metrics,
  .rc-site[data-page=contact] .rc-contact-form-wrap,
  .rc-site[data-page=contact] .rc-contact-summary,
  .rc-site[data-page=contact] .rc-contact-selection,
  .rc-site[data-page=contact] .rc-contact-map-address { background: #ffffff; }
}
@media (max-width: 760px) {
  .rc-site .rc-nav { background: rgba(245, 245, 247, .94); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
  .rc-site .rc-brand { letter-spacing: .09em; }
  .rc-site .rc-footer [data-motion-toggle] { min-height: 44px; min-width: 44px; }
}
/* Warm charcoal rings with an ivory outer edge remain visible on both page and image.
   Difference blending excluded the isolated body background in Chrome.
   Six contrast rings accompany a real mouse. The operating-system cursor stays untouched. */
.rc-pointer-trail { position: fixed; inset: 0; z-index: 90; overflow: hidden; pointer-events: none !important; contain: strict; mix-blend-mode: normal; }
.rc-pointer-trail[hidden] { display: none; }
.rc-pointer-trail > i {
  position: absolute;
  top: 0;
  left: 0;
  width: var(--rc-pointer-size, 16px);
  height: var(--rc-pointer-size, 16px);
  margin: calc(var(--rc-pointer-size, 16px) / -2) 0 0 calc(var(--rc-pointer-size, 16px) / -2);
  border: 1.5px solid #49332f;
  border-radius: 50%;
  background: transparent;
  box-shadow: 0 0 0 1px rgba(255,250,242,.96);
  pointer-events: none !important;
  will-change: transform;
}
@media (hover: none), (pointer: coarse), (prefers-reduced-motion: reduce) { .rc-pointer-trail { display: none !important; } }

/* Keep model references distinct from their quantity in the enquiry handoff. */
.rc-site #contact-selection-list li { display: flex; flex-wrap: wrap; gap: 2px .45em; }
