:root,body.rnr-public-surface.careers-surface:not(.easy-view) {
  --brand-black:#050505;
  --brand-gold:#ddbc84;
  --brand-gold-hover:#eed3a6;
  --brand-light:#dfd0b2;
  --brand-dim:#cbbd9f;
  --brand-panel:#151513;
  --brand-line:#494237;
  color-scheme:dark;
}
* { box-sizing:border-box; }
[hidden] { display:none!important; }
html { scroll-padding-top:7rem; background:var(--brand-black); scrollbar-color:var(--brand-line) var(--brand-black); }
body { margin:0; background:var(--brand-black); color:var(--brand-light); font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; font-size:1rem; line-height:1.65; }
body.rnr-public-surface.careers-surface:not(.easy-view) { color:var(--brand-light)!important; }
/* The shared public theme owns important form rules; scope the reading contrast to Careers. */
body.careers-surface #hiring-form .field { border-color:#82715a!important; color:var(--brand-light)!important; background:#0b0b0a!important; }
body.careers-surface #hiring-form .field:focus { border-color:var(--brand-gold)!important; outline:2px solid var(--brand-gold)!important; }
body.careers-surface #hiring-form .submit-button { background:var(--brand-gold)!important; border-color:var(--brand-gold)!important; }
body.careers-surface #hiring-form .submit-button:hover:not(:disabled) { background:var(--brand-gold-hover)!important; border-color:var(--brand-gold-hover)!important; }
::selection { background:var(--brand-gold); color:#17130d; }
a { color:var(--brand-gold); text-underline-offset:.22em; }
a:hover { color:var(--brand-gold-hover); }
button,a,input,textarea { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:2px solid var(--brand-gold); outline-offset:5px; }
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { text-wrap:balance; }
h1,h2 { font-family:'Cormorant Garamond',serif; }
em { color:var(--brand-gold); font-weight:400; }
svg { width:1.1rem; height:1.1rem; flex:none; stroke-width:1.6; }
.fixed-nav { position:fixed; inset:0 0 auto; z-index:50; height:80px; }
.skip-link { position:fixed; top:-5rem; left:1rem; z-index:100; padding:.6rem 1rem; background:var(--brand-gold); color:var(--brand-black); }
.skip-link:focus { top:1rem; }
.skip-link:hover { color:#17130d; }
.page-shell,.footer-inner { width:min(100% - 4rem,1140px); margin:0 auto; }
.careers-main { min-height:80vh; padding:8.6rem 0 5rem; }
.landing-intro { padding-bottom:3.5rem; }
.landing-intro h1 { margin:0 0 1.9rem; font-size:clamp(2.9rem,5.2vw,4.5rem); font-weight:500; letter-spacing:-.025em; line-height:1.08; }
.intro-columns { display:grid; grid-template-columns:1.5fr 1fr; gap:5rem; align-items:center; }
.intro-columns h2 { margin-bottom:.65rem; font-family:inherit; font-size:1.2rem; font-weight:600; line-height:1.45; }
.intro-columns p { max-width:58ch; margin-bottom:0; font-size:1rem; color:var(--brand-dim); line-height:1.7; }
.landing-benefits { display:grid; gap:.7rem; margin:0; padding:0; list-style:none; }
.landing-benefits li { display:flex; align-items:center; gap:.8rem; font-size:1rem; line-height:1.45; }
.landing-benefits svg { color:var(--brand-gold); }
.landing-benefits strong { font-weight:600; }
.open-roles {
  --brand-light:#d3c7b1;
  --brand-dim:#b9b0a0;
  --brand-gold:#cbb18b;
  --brand-gold-hover:#e1c9a4;
  --brand-panel:#131310;
  --brand-line:#34332c;
  color:var(--brand-light);
}
.list-heading { display:flex; align-items:baseline; justify-content:space-between; gap:1rem; padding-top:1.6rem; border-top:1px solid var(--brand-line); }
.list-heading h2 { margin:0; font-size:2.1rem; font-weight:500; }
.list-heading > span { color:var(--brand-dim); font:400 .86rem/1.5 system-ui,sans-serif; }
.list-intro { margin:.2rem 0 1.4rem; color:var(--brand-dim); font-size:1.05rem; }
.job-list { list-style:none; margin:0; padding:0; border-top:1px solid var(--brand-line); }
.job-row { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.5fr) auto; align-items:center; gap:2rem; min-height:100px; padding:1.1rem 0; border-bottom:1px solid var(--brand-line); color:var(--brand-light); text-decoration:none; transition:background .18s ease-out; }
.job-row:hover,.job-row:focus-visible,.job-row:active { background:#14130f; color:var(--brand-light); }
.job-row:focus-visible { outline-offset:-3px; }
.job-role { grid-column:2; grid-row:1; }
.job-role h3 { margin:0 0 .3rem; font-size:1rem; font-weight:400; line-height:1.45; text-wrap:pretty; }
.job-role h3 span { white-space:nowrap; }
.job-type { color:var(--brand-dim); font:400 .8125rem/1.5 system-ui,sans-serif; }
.job-location { display:flex; grid-column:1; grid-row:1; gap:.6rem; align-items:flex-start; }
.job-location svg { margin-top:.3rem; color:var(--brand-dim); width:1rem; height:1rem; }
.job-location strong { display:block; color:var(--brand-gold); font-size:1.125rem; font-weight:500; line-height:1.45; }
.job-location small { display:none; margin-top:.2rem; color:var(--brand-dim); font:400 .8125rem/1.5 system-ui,sans-serif; }
.job-list > li:first-child .job-location small { display:block; }
.job-action { display:flex; grid-column:3; grid-row:1; align-items:center; gap:.65rem; color:var(--brand-dim); font-size:.875rem; font-weight:400; white-space:nowrap; }
.listing-note { max-width:70ch; margin:1.5rem 0 0; color:var(--brand-dim); font-size:1rem; }
.careers-questions { display:flex; align-items:center; justify-content:space-between; gap:2rem; margin-top:4.5rem; }
.careers-questions h2 { margin-bottom:.35rem; font-size:1.85rem; font-weight:400; }
.careers-questions p { margin:0; color:var(--brand-dim); font-size:1.05rem; }
.text-link,.back-link { display:inline-flex; align-items:center; gap:.6rem; }
.text-link { font-size:1.1rem; }
.back-link { margin-bottom:2rem; font-size:1rem; text-decoration:none; }
.back-link:hover { text-decoration:underline; }
.posting-heading { position:relative; padding-bottom:2rem; margin-bottom:2.7rem; border-bottom:1px solid var(--brand-line); }
.posting-heading h1 { max-width:22ch; margin-bottom:1.25rem; font-size:clamp(2.5rem,4.9vw,4rem); font-weight:500; letter-spacing:-.025em; line-height:1.08; }
.posting-heading h1 span { white-space:nowrap; }
.posting-meta { display:flex; flex-wrap:wrap; align-items:center; gap:.6rem 1.5rem; color:var(--brand-dim); font-size:1rem; }
.posting-meta > span:first-child { display:flex; align-items:center; gap:.5rem; color:var(--brand-gold); }
.posting-layout { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:5rem; align-items:start; }
.posting-body { min-width:0; }
.posting-body section + section { margin-top:2.8rem; }
.posting-body h2 { margin:0 0 1rem; font-size:2.15rem; font-weight:600; line-height:1.2; }
.posting-body p { margin-bottom:1.2rem; font-size:1.05rem; line-height:1.8; color:var(--brand-dim); }
.posting-body strong { color:var(--brand-light); font-weight:600; }
.posting-list { padding-left:1.1rem; margin:0 0 1rem; color:var(--brand-dim); font-size:1.05rem; line-height:1.8; }
.posting-list li { padding-left:.35rem; margin-bottom:.65rem; }
.posting-list li::marker { color:var(--brand-gold); }
.job-summary { position:sticky; top:7rem; padding:1.7rem; background:var(--brand-panel); border:1px solid var(--brand-line); border-radius:4px; }
.job-summary h2 { margin:0 0 1.1rem; font-size:1.8rem; font-weight:400; }
.job-summary dl { margin:0 0 1.5rem; }
.job-summary dl div { padding:1rem 0; border-top:1px solid var(--brand-line); }
.job-summary dt { margin-bottom:.4rem; color:var(--brand-dim); font:400 .85rem/1.5 system-ui,sans-serif; }
.job-summary dd { margin:0; color:var(--brand-light); font-size:1rem; font-weight:500; line-height:1.5; }
.job-summary dd span { display:block; margin-top:.4rem; color:var(--brand-dim); font-size:.9rem; font-weight:400; }
.primary-button,.submit-button { display:inline-flex; align-items:center; justify-content:center; gap:.75rem; min-height:48px; padding:.8rem 1.2rem; border:1px solid var(--brand-gold); border-radius:3px; background:var(--brand-gold); color:#17130d; font:600 .95rem/1.4 system-ui,sans-serif; text-decoration:none; cursor:pointer; transition:background .18s ease-out; }
.primary-button:hover,.submit-button:hover:not(:disabled) { color:#17130d; background:var(--brand-gold-hover); border-color:var(--brand-gold-hover); }
.job-summary .primary-button { width:100%; }
.summary-note { margin:.85rem 0 0; color:var(--brand-dim); font-size:.9rem; text-align:center; line-height:1.4; }
.business-address { font-size:1rem!important; }
.application-layout { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:5rem; align-items:start; }
.application-copy { position:sticky; top:7rem; }
.application-copy h1 { max-width:11ch; margin-bottom:1.5rem; font-size:clamp(3rem,5vw,4.5rem); font-weight:400; letter-spacing:-.025em; line-height:1.05; }
.application-copy h1 em { display:block; }
.application-copy > p { color:var(--brand-dim); font-size:1.1rem; }
.applying-for { margin:2rem 0; padding:1.6rem 0; border-top:1px solid var(--brand-line); border-bottom:1px solid var(--brand-line); }
.applying-for h2 { margin-bottom:.7rem; font-size:1.65rem; font-weight:500; line-height:1.2; }
.applying-for p { display:flex; align-items:center; gap:.5rem; color:var(--brand-gold); margin-bottom:.3rem; }
.applying-for > span { color:var(--brand-dim); font-size:1rem; }
.application-help a { overflow-wrap:anywhere; }
.application-panel { padding:2rem; border:1px solid var(--brand-line); border-radius:4px; background:var(--brand-panel); }
.application-panel > h2 { margin:0 0 .5rem; color:var(--brand-light); font-size:2rem; font-weight:400; line-height:1.2; }
.form-intro { margin-bottom:1.8rem; color:var(--brand-dim); font-size:1rem; line-height:1.5; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.25rem 1rem; }
.field-group { min-width:0; }
.field-group.full { grid-column:1/-1; }
.field-label { display:block; margin:0 0 .5rem; color:var(--brand-light); font:500 .875rem/1.5 system-ui,sans-serif; }
.field { width:100%; min-height:3rem; scroll-margin-top:6rem; padding:.72rem .82rem; border:1px solid #82715a; border-radius:3px; background:#0b0b0a; color:var(--brand-light); caret-color:var(--brand-gold); font:400 1rem/1.5 system-ui,sans-serif; }
textarea.field { min-height:8rem; resize:vertical; }
.field::placeholder { color:var(--brand-dim); opacity:1; }
.field:hover { border-color:var(--brand-gold); }
.field:focus { border-color:var(--brand-gold); outline:2px solid var(--brand-gold); outline-offset:2px; }
input[type=file].field { padding:.4rem; font-size:.95rem; }
input[type=file]::file-selector-button { min-height:2.1rem; margin-right:.5rem; padding:.3rem .65rem; border:1px solid var(--brand-gold); border-radius:2px; background:var(--brand-panel); color:var(--brand-light); font:500 .875rem/1.5 system-ui,sans-serif; cursor:pointer; }
.field-help { display:block; margin-top:.45rem; color:var(--brand-dim); font-size:.88rem; line-height:1.4; }
.submit-button { width:100%; margin-top:.4rem; }
.submit-button:disabled { cursor:default; opacity:.72; }
.form-status { grid-column:1/-1; margin:0; padding:1rem; font-size:1rem; line-height:1.5; border:1px solid var(--brand-line); border-radius:3px; }
.form-status.success { background:#142419; color:#d9efdf; }
.form-status.error { background:#321b1b; color:#fee2e2; }
.noscript-message { margin-top:2rem; }
.site-footer { border-top:1px solid var(--brand-line); background:#0a0a0a; }
.footer-inner { padding:3rem 0 2rem; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr; gap:3rem; padding-bottom:2.5rem; }
.footer-brand { display:inline-flex; align-items:center; gap:.65rem; color:var(--brand-gold); font-weight:700; letter-spacing:.12em; text-decoration:none; }
.footer-brand img { width:auto; height:2rem; }
.footer-copy { max-width:24rem; margin:1rem 0 0; color:var(--brand-dim); font-size:.95rem; }
.footer-title { margin:0 0 1.1rem; font-size:.8rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.footer-links { display:grid; gap:.7rem; margin:0; padding:0; color:var(--brand-dim); font-size:.95rem; list-style:none; }
.footer-links a { color:inherit; text-decoration:none; overflow-wrap:anywhere; }
.footer-links a:hover { color:var(--brand-gold); }
.footer-bottom { display:flex; justify-content:space-between; gap:1rem; padding-top:1.5rem; border-top:1px solid var(--brand-line); color:var(--brand-dim); font-size:.85rem; }
.footer-legal { display:flex; gap:1.5rem; }
.footer-legal a { color:inherit; }
@media (max-width:900px) {
  .intro-columns { gap:2rem; grid-template-columns:1.2fr 1fr; }
  .job-row { gap:1.25rem; grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr) auto; }
  .job-action { font-size:0; gap:0; }
  .job-action svg { width:1.3rem; height:1.3rem; }
  .posting-layout { grid-template-columns:minmax(0,1fr) 280px; gap:2rem; }
  .job-summary { padding:1.3rem; }
  .application-layout { gap:2.5rem; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); }
  .application-panel { padding:1.5rem; }
  .form-grid { grid-template-columns:1fr; }
  .footer-grid { gap:2rem; grid-template-columns:1.4fr 1fr 1fr; }
}
@media (max-width:680px) {
  .page-shell,.footer-inner { width:calc(100% - 2.5rem); }
  .careers-main { padding:7rem 0 3rem; }
  .landing-intro { padding-bottom:2.2rem; }
  .landing-intro h1 { font-size:3rem; margin-bottom:1.5rem; }
  .landing-intro h1 em { display:block; }
  .intro-columns { grid-template-columns:1fr; gap:1.5rem; }
  .intro-columns h2 { font-size:1.1rem; }
  .landing-benefits { gap:.6rem; }
  .list-heading { align-items:center; padding-top:1.3rem; }
  .list-heading h2 { font-size:1.8rem; }
  .list-heading > span { max-width:9ch; text-align:right; font-size:.8rem; }
  .list-intro { font-size:1rem; margin-bottom:1.1rem; }
  .job-list { display:grid; gap:.55rem; border:0; }
  .job-row { grid-template-columns:minmax(0,1fr) auto; gap:.45rem .8rem; min-height:0; padding:1rem; background:var(--brand-panel); border:1px solid var(--brand-line); border-radius:4px; }
  .job-row:hover,.job-row:focus-visible,.job-row:active { background:#1c1b16; }
  .job-role { grid-column:1/-1; grid-row:2; }
  .job-role h3 { margin-bottom:.3rem; font-size:1rem; font-weight:400; line-height:1.4; max-width:none; }
  .job-type { font-size:.8125rem; line-height:1.4; }
  .job-location { grid-column:1; grid-row:1; gap:.45rem; }
  .job-location > span { display:flex; flex-wrap:wrap; align-items:baseline; gap:.2rem .6rem; min-width:0; }
  .job-location svg { width:1rem; height:1rem; margin-top:.2rem; }
  .job-location strong { font-size:1rem; }
  .job-location small { display:none; margin:0; font-size:.75rem; }
  .job-list > li:first-child .job-location small { display:block; }
  .job-action { grid-column:2; grid-row:1; color:var(--brand-dim); }
  .job-action svg { width:1rem; height:1rem; }
  .careers-questions { flex-direction:column; align-items:start; gap:1.25rem; margin-top:3rem; }
  .careers-questions h2 { font-size:1.7rem; }
  .back-link { margin-bottom:1.5rem; min-height:2rem; }
  .posting-heading { padding-bottom:1.5rem; margin-bottom:2rem; }
  .posting-heading h1 { font-size:2.65rem; }
  .posting-heading h1 br { display:none; }
  .posting-meta { gap:.5rem 1rem; font-size:.97rem; }
  .posting-meta > span:first-child { width:100%; }
  .posting-layout { display:flex; flex-direction:column; gap:2.5rem; }
  .job-summary { position:static; order:-1; width:100%; padding:1.15rem; }
  .job-summary h2 { margin-bottom:1rem; font-size:1.65rem; }
  .job-summary dl { display:block; margin-bottom:1rem; }
  .job-summary dl div { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:.3rem .8rem; padding:.8rem 0; }
  .job-summary dl div:first-child { display:none; }
  .job-summary dl div:nth-child(2) { display:block; padding-top:0; border-top:0; }
  .job-summary dd { max-width:100%; font-size:.95rem; }
  .job-summary dl div:nth-child(2) dd { margin-top:.3rem; font-size:1.15rem; }
  .job-summary dd span { margin-top:.25rem; font-size:.88rem; line-height:1.5; }
  .job-summary dt { margin:0; font-size:.82rem; }
  .posting-body h2 { font-size:1.85rem; }
  .posting-body p,.posting-list { font-size:1rem; }
  .posting-contact a { overflow-wrap:anywhere; }
  .application-layout { grid-template-columns:1fr; gap:1.75rem; }
  .application-copy { position:static; }
  .application-copy h1 { max-width:none; font-size:3rem; }
  .application-copy h1 em { display:inline; }
  .application-copy > p { margin-bottom:0; }
  .applying-for { margin:1.3rem 0 0; padding:1.2rem 0; }
  .application-help { display:none; }
  .application-panel { padding:1.35rem 1rem; }
  .field { font-size:16px; }
  .footer-grid { grid-template-columns:1fr; gap:2rem; }
  .footer-bottom { flex-direction:column; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }
