.rnab-page { margin:0; background:var(--rnab-black); color:#fff; font-family:var(--rnab-body-font),Arial,sans-serif; -webkit-font-smoothing:antialiased; }
.rnab-page.admin-bar .rnab-header { top:46px; }
.rnab-shell,.rnab-shell * { box-sizing:border-box; }
.rnab-shell { overflow:hidden; background:var(--rnab-black); }
.rnab-shell a { color:inherit; text-decoration:none; }
.rnab-shell img { display:block; max-width:100%; }
.rnab-shell h1,.rnab-shell h2,.rnab-shell h3,.rnab-shell p { margin-top:0; }
.rnab-header { position:absolute; z-index:20; top:0; left:0; display:flex; width:100%; align-items:center; justify-content:space-between; padding:18px; }
.rnab-brand img { width:112px; height:auto; filter:invert(1); }
.rnab-header-actions { display:flex; align-items:center; gap:8px; }
.rnab-home-link { padding:11px 9px; color:rgba(255,255,255,.76); font-size:12px; font-weight:600; transition:color .25s ease; }
.rnab-home-link:hover { color:var(--rnab-gold-light); }
.rnab-button { display:inline-flex; min-height:50px; align-items:center; justify-content:center; gap:24px; border:1px solid rgba(255,255,255,.2); border-radius:var(--rnab-button-radius); padding:14px 20px; color:#15110a!important; background:linear-gradient(105deg,#b99145,var(--rnab-gold-light) 52%,var(--rnab-gold)); box-shadow:0 13px 34px rgba(201,164,95,.18); font-size:13px; font-weight:700; transition:transform .25s ease,box-shadow .25s ease,filter .25s ease; }
.rnab-button:hover { transform:translateY(-2px); filter:brightness(1.08); box-shadow:0 18px 42px rgba(201,164,95,.29); }
.rnab-button-small { min-height:42px; gap:12px; padding:11px 13px; font-size:11px; }
.rnab-hero { position:relative; display:flex; min-height:100svh; overflow:hidden; align-items:center; padding:120px 24px 90px; background:radial-gradient(circle at 82% 33%,rgba(201,164,95,.13),transparent 25%),linear-gradient(180deg,var(--rnab-black) 0%,#080808 100%); }
.rnab-hero:after { position:absolute; right:-85px; bottom:-85px; width:280px; height:280px; border:1px solid rgba(201,164,95,.23); border-radius:50%; content:""; }
.rnab-hero-orbit { position:absolute; border-radius:50%; filter:blur(2px); pointer-events:none; }
.rnab-orbit-one { top:21%; right:-110px; width:270px; height:270px; border:1px solid rgba(201,164,95,.2); }
.rnab-orbit-two { top:29%; right:-46px; width:140px; height:140px; background:rgba(201,164,95,.07); }
.rnab-hero-copy { position:relative; z-index:2; width:min(100%,660px); }
.rnab-eyebrow { display:flex; align-items:center; gap:12px; margin:0 0 22px; color:var(--rnab-gold-light); font-size:10px; font-weight:700; letter-spacing:.25em; text-transform:uppercase; }
.rnab-eyebrow:before { width:28px; height:1px; background:currentColor; content:""; }
.rnab-eyebrow.rnab-dark { color:#8b6a30; }
.rnab-shell h1,.rnab-shell h2 { font-family:var(--rnab-heading-font),Georgia,serif; font-weight:500; letter-spacing:-.045em; }
.rnab-shell h1 { max-width:580px; margin-bottom:28px; font-size:clamp(56px,17vw,82px); line-height:.83; }
.rnab-shell h1 em,.rnab-shell h2 em { display:block; padding-top:.13em; color:var(--rnab-gold); font-weight:500; line-height:.9; }
.rnab-hero-intro { max-width:500px; margin-bottom:32px; color:rgba(255,255,255,.66); font-size:15px; line-height:1.8; }
.rnab-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:22px; }
.rnab-text-link { padding:10px 2px; border-bottom:1px solid rgba(255,255,255,.25); color:rgba(255,255,255,.8)!important; font-size:12px; font-weight:600; }
.rnab-signature-mark { position:absolute; right:-10px; bottom:95px; color:rgba(255,255,255,.025); font-family:var(--rnab-heading-font),Georgia,serif; font-size:270px; font-style:italic; line-height:.6; transform:rotate(-8deg); }
.rnab-scroll-hint { position:absolute; left:24px; bottom:27px; display:flex; align-items:center; gap:11px; margin:0; color:rgba(255,255,255,.36); font-size:8px; letter-spacing:.18em; }
.rnab-scroll-hint span { display:block; width:28px; height:1px; background:var(--rnab-gold); animation:rnab-pulse-line 1.8s ease-in-out infinite; }
.rnab-section-pad { padding:88px 24px; }
.rnab-story { display:grid; gap:64px; color:#141414; background:var(--rnab-paper); }
.rnab-story-photo { position:relative; max-width:360px; margin:0 auto; }
.rnab-portrait-frame { position:relative; overflow:hidden; border-radius:180px 180px var(--rnab-card-radius) var(--rnab-card-radius); background:radial-gradient(circle at 50% 40%,#e8d9c2 0,#d4b77d 47%,#9c793d 100%); box-shadow:0 28px 60px rgba(69,48,17,.17); }
.rnab-portrait-frame:after { position:absolute; inset:15px; border:1px solid rgba(255,255,255,.42); border-radius:inherit; content:""; pointer-events:none; }
.rnab-portrait-frame img { width:100%; aspect-ratio:.73; object-fit:cover; object-position:center top; filter:saturate(.84) contrast(1.02); transition:transform .8s cubic-bezier(.2,.8,.2,1); }
.rnab-portrait-frame:hover img { transform:scale(1.025); }
.rnab-story-photo>p { margin:17px 4px 0; color:#726c62; font-size:10px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.rnab-story-copy h2,.rnab-values h2,.rnab-contact-heading h2 { margin-bottom:30px; font-size:clamp(45px,13vw,68px); line-height:.89; }
.rnab-lead { margin-bottom:24px; color:#222; font-family:var(--rnab-heading-font),Georgia,serif; font-size:25px; line-height:1.25; }
.rnab-story-text { color:var(--rnab-gray); font-size:14px; line-height:1.85; }
.rnab-story blockquote { margin:35px 0 0; padding:20px 0 0 20px; border-top:1px solid #d8d2c8; border-left:2px solid var(--rnab-gold); color:#3b3935; font-family:var(--rnab-heading-font),Georgia,serif; font-size:21px; font-style:italic; line-height:1.45; }
.rnab-story blockquote cite { display:block; margin-top:13px; color:#7f786e; font-family:var(--rnab-body-font),Arial,sans-serif; font-size:9px; font-style:normal; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
.rnab-values { border-top:1px solid rgba(255,255,255,.14); background:var(--rnab-black-soft); }
.rnab-values-heading { max-width:620px; margin-bottom:45px; }
.rnab-value-list { display:grid; gap:1px; overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:var(--rnab-card-radius); background:rgba(255,255,255,.14); }
.rnab-value-list article { min-height:220px; padding:30px; background:#0b0b0b; transition:background .3s ease; }
.rnab-value-list article:hover { background:#11100d; }
.rnab-value-list article>span { display:inline-grid; width:36px; height:36px; margin-bottom:36px; place-items:center; border:1px solid rgba(201,164,95,.45); border-radius:50%; color:var(--rnab-gold-light); font-family:var(--rnab-heading-font),Georgia,serif; font-size:16px; }
.rnab-value-list h3 { margin:0 0 13px; font-family:var(--rnab-heading-font),Georgia,serif; font-size:35px; font-weight:500; }
.rnab-value-list p { max-width:290px; margin-bottom:0; color:rgba(255,255,255,.54); font-size:13px; line-height:1.7; }
.rnab-contact { color:#151515; background:var(--rnab-paper); }
.rnab-contact-heading { max-width:620px; margin-bottom:50px; }
.rnab-contact-heading>p:last-child { max-width:520px; color:var(--rnab-gray); font-size:14px; line-height:1.8; }
.rnab-contact-card { display:grid; overflow:hidden; border-radius:var(--rnab-card-radius); color:#fff; background:#090909; box-shadow:0 35px 80px rgba(32,25,14,.18); }
.rnab-contact-info { padding:28px 22px 30px; }
.rnab-contact-list { display:grid; gap:3px; margin-bottom:26px; }
.rnab-contact-list a { display:grid; grid-template-columns:42px minmax(0,1fr) auto; gap:13px; align-items:center; min-height:67px; padding:10px 5px; border-bottom:1px solid rgba(255,255,255,.1); transition:padding .25s ease,color .25s ease; }
.rnab-contact-list a:hover { padding-left:10px; color:var(--rnab-gold-light); }
.rnab-contact-icon { display:grid; width:40px; height:40px; place-items:center; border:1px solid rgba(201,164,95,.38); border-radius:50%; color:var(--rnab-gold-light); font-size:10px; font-weight:700; }
.rnab-contact-list small,.rnab-address small,.rnab-hours>small { display:block; margin-bottom:4px; color:rgba(255,255,255,.42); font-size:8px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.rnab-contact-list strong,.rnab-address strong { display:block; overflow-wrap:anywhere; font-size:12px; font-weight:600; line-height:1.5; }
.rnab-contact-list b { color:var(--rnab-gold); font-size:13px; }
.rnab-address,.rnab-hours { margin:25px 0; }
.rnab-hours p { display:flex; justify-content:space-between; gap:14px; margin:0 0 6px; color:rgba(255,255,255,.72); font-size:11px; line-height:1.5; }
.rnab-hours p b { font-weight:500; }
.rnab-hours p span { text-align:right; }
.rnab-contact-button { width:100%; margin-top:10px; }
.rnab-map-wrap { position:relative; min-height:390px; background:#272727; }
.rnab-map-wrap iframe { display:block; width:100%; height:100%; min-height:390px; border:0; filter:grayscale(.74) contrast(1.05) sepia(.12); }
.rnab-map-link { position:absolute; right:18px; bottom:18px; display:flex; min-height:48px; align-items:center; gap:28px; border-radius:var(--rnab-button-radius); padding:13px 17px; color:#12100b!important; background:var(--rnab-gold-light); box-shadow:0 12px 35px rgba(0,0,0,.25); font-size:11px; font-weight:700; }
.rnab-no-map .rnab-contact-info { max-width:720px; }
.rnab-footer { display:grid; gap:34px; padding:58px 24px 30px; border-top:1px solid rgba(255,255,255,.14); background:var(--rnab-black); }
.rnab-footer-brand img { width:180px; height:auto; filter:invert(1); }
.rnab-footer-brand p { max-width:280px; margin:18px 0 0; color:rgba(255,255,255,.4); font-family:var(--rnab-heading-font),Georgia,serif; font-size:18px; font-style:italic; }
.rnab-footer-socials { display:flex; gap:10px; }
.rnab-footer-socials a { display:grid; width:46px; height:46px; place-items:center; border:1px solid rgba(201,164,95,.4); border-radius:50%; color:var(--rnab-gold-light); font-size:10px; font-weight:700; transition:color .25s ease,background .25s ease; }
.rnab-footer-socials a:hover { color:#111; background:var(--rnab-gold-light); }
.rnab-copyright { margin:4px 0 0; color:rgba(255,255,255,.34); font-size:9px; letter-spacing:.08em; }
.rnab-animate { opacity:0; transform:translateY(26px); transition:opacity var(--rnab-animation-duration) ease,transform var(--rnab-animation-duration) cubic-bezier(.2,.8,.2,1); }
.rnab-animate.is-visible { opacity:1; transform:none; }
.rnab-animation-none .rnab-animate { opacity:1; transform:none; }
.rnab-animation-soft-scale .rnab-animate { transform:scale(.965); }
.rnab-animation-soft-scale .rnab-animate.is-visible { transform:scale(1); }
.rnab-animation-slide-alternating .rnab-animate:nth-child(even) { transform:translateX(26px); }
.rnab-animation-slide-alternating .rnab-animate:nth-child(odd) { transform:translateX(-26px); }
.rnab-animation-slide-alternating .rnab-animate.is-visible { transform:none; }
@keyframes rnab-pulse-line { 0%,100% { transform:scaleX(.65); transform-origin:left; opacity:.45; } 50% { transform:scaleX(1); opacity:1; } }
@media (min-width:760px) {
  .rnab-page.admin-bar .rnab-header { top:32px; }
  .rnab-header { padding:26px 42px; }
  .rnab-brand img { width:155px; }
  .rnab-header-actions { gap:16px; }
  .rnab-home-link { font-size:13px; }
  .rnab-button-small { min-height:46px; padding:12px 18px; font-size:12px; }
  .rnab-hero { min-height:820px; padding:150px 8vw 100px; }
  .rnab-shell h1 { font-size:clamp(76px,8vw,116px); }
  .rnab-hero-intro { font-size:16px; }
  .rnab-signature-mark { right:5vw; bottom:18%; font-size:460px; }
  .rnab-scroll-hint { left:8vw; bottom:34px; }
  .rnab-section-pad { padding:125px 7vw; }
  .rnab-story { grid-template-columns:minmax(300px,.84fr) minmax(380px,1.16fr); align-items:center; gap:9vw; }
  .rnab-story-photo { width:min(100%,410px); max-width:none; }
  .rnab-story-copy { max-width:570px; }
  .rnab-story-copy h2,.rnab-values h2,.rnab-contact-heading h2 { font-size:clamp(58px,6.5vw,86px); }
  .rnab-lead { font-size:31px; }
  .rnab-values-heading { margin-bottom:65px; }
  .rnab-value-list { grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); }
  .rnab-value-list article { min-height:310px; padding:38px; }
  .rnab-value-list article>span { margin-bottom:66px; }
  .rnab-contact-card:not(.rnab-no-map) { grid-template-columns:minmax(360px,.86fr) minmax(440px,1.14fr); }
  .rnab-contact-info { padding:44px; }
  .rnab-map-wrap,.rnab-map-wrap iframe { min-height:720px; }
  .rnab-footer { grid-template-columns:1fr auto auto; align-items:center; gap:50px; padding:60px 7vw; }
  .rnab-copyright { margin:0; }
}
@media (min-width:1180px) {
  .rnab-hero { padding-left:max(9vw,calc((100vw - 1280px)/2)); }
  .rnab-section-pad { padding-right:max(8vw,calc((100vw - 1280px)/2)); padding-left:max(8vw,calc((100vw - 1280px)/2)); }
  .rnab-contact-card:not(.rnab-no-map) { grid-template-columns:.78fr 1.22fr; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto!important; }
  .rnab-shell *,.rnab-shell *:before,.rnab-shell *:after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
  .rnab-animate { opacity:1; transform:none!important; }
}
.rnab-arrow-ne { position:relative; display:inline-block; flex:0 0 auto; width:.72em; height:.72em; border-top:1.5px solid currentColor; border-right:1.5px solid currentColor; font-size:1em; line-height:1; }
.rnab-arrow-ne::after { position:absolute; top:-1px; right:-1px; width:1em; height:1.5px; background:currentColor; content:""; transform:rotate(-45deg); transform-origin:right center; }
