:root{--wf-bg:#f7f8fc;--wf-surface:#fff;--wf-text:#17204a;--wf-muted:#667085;--wf-primary:#2936a3;--wf-primary-hover:#202c8a;--wf-border:#d9ddea;--wf-support-bg:#eef8f0;--wf-support-border:#b8ddc0;--wf-warning-bg:#fff7e6;--wf-warning-border:#efc56a;--wf-info-bg:#eff4ff;--wf-info-border:#b9cdfd;--wf-danger-bg:#fff0f1;--wf-danger-border:#efb0b7;--wf-danger:#c93549;--wf-radius-sm:8px;--wf-radius-md:14px;--wf-radius-lg:20px;--wf-shadow:0 12px 32px rgba(23,32,74,.08)}
body.rm-human-page .wp-site-blocks>header,
body.rm-human-page .wp-site-blocks>footer,
body.rm-human-page .wp-block-post-title{display:none}
body.rm-human-page .wp-site-blocks>main>.wp-block-group,
body.rm-human-page .wp-site-blocks>main,
body.rm-human-page .wp-block-post-content{margin:0!important;padding:0!important;max-width:none!important}
body.rm-human-page .rm-human-root{width:100%!important;margin-left:0!important}
.rm-human-root{background:var(--wf-bg);color:var(--wf-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh;line-height:1.55;width:100vw;max-width:none;margin-left:calc(50% - 50vw)}
.rm-human-root *{box-sizing:border-box}.rm-human-root button,.rm-human-root textarea{font:inherit}.rm-app-shell{min-height:100vh}.rm-topbar{height:76px;background:#fff;border-bottom:1px solid var(--wf-border);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,64px)}
.rm-brand{display:flex;gap:11px;align-items:center;color:var(--wf-text);font-size:19px;font-weight:800;letter-spacing:.08em;text-decoration:none}.rm-brand small{display:block;font-size:10px;font-weight:500;letter-spacing:0;color:var(--wf-muted)}.rm-mark{width:36px;height:36px;border:1.5px solid var(--wf-primary);border-radius:50%;display:grid;place-items:center;color:var(--wf-primary)}.rm-top-actions{display:flex;align-items:center;gap:10px}.rm-beta{background:#eef0ff;color:var(--wf-primary);padding:6px 12px;border-radius:999px;font-size:12px;font-weight:700}.rm-top-delete{border:0;background:transparent;color:var(--wf-danger);text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-size:12px}
.rm-app-grid{display:grid;grid-template-columns:230px minmax(0,820px);gap:clamp(30px,6vw,90px);max-width:1200px;margin:0 auto;padding:44px 28px 80px}.rm-main{outline:none}.rm-progress{display:flex;flex-direction:column;gap:6px;position:sticky;top:24px;align-self:start}.rm-progress-item{border:0;background:transparent;text-align:left;color:var(--wf-muted);display:flex;align-items:center;gap:10px;padding:10px;border-radius:10px}.rm-progress-item span{width:24px;height:24px;border-radius:50%;border:1px solid var(--wf-border);display:grid;place-items:center;font-size:12px}.rm-progress-item.is-active{background:#eef0ff;color:var(--wf-primary);font-weight:700}.rm-progress-item.is-active span,.rm-progress-item.is-complete span{background:var(--wf-primary);color:#fff;border-color:var(--wf-primary)}.rm-progress-item:disabled{opacity:.55}
.rm-hero,.rm-card{background:var(--wf-surface);border:1px solid var(--wf-border);border-radius:var(--wf-radius-lg);padding:clamp(24px,5vw,52px);box-shadow:var(--wf-shadow)}.rm-human-root h1{font-size:clamp(29px,4vw,46px);line-height:1.12;letter-spacing:-.035em;margin:8px 0 18px}.rm-lead{font-size:18px;color:#3c456e;max-width:680px}.rm-eyebrow,.rm-step,.rm-code{color:var(--wf-primary);font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.rm-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:32px 0}.rm-trust article{display:flex;gap:10px;background:#fafaff;padding:15px;border-radius:var(--wf-radius-md)}.rm-trust p,.rm-boundary p{margin:3px 0;color:var(--wf-muted);font-size:14px}.rm-icon{flex:none;width:28px;height:28px;border-radius:50%;background:#eef0ff;color:var(--wf-primary);display:inline-grid;place-items:center;font-weight:800}.rm-actions{display:flex;gap:12px;align-items:center;margin-top:30px;flex-wrap:wrap}.rm-between{justify-content:space-between}.rm-button{min-height:46px;border-radius:12px;padding:11px 20px;border:1px solid transparent;font-weight:750;cursor:pointer}.rm-primary{background:var(--wf-primary);color:#fff}.rm-primary:hover{background:var(--wf-primary-hover)}.rm-secondary{background:#fff;border-color:var(--wf-border);color:var(--wf-primary)}.rm-tertiary,.rm-link,.rm-delete-link{border:0;background:transparent;color:var(--wf-primary);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.rm-button:focus-visible,.rm-choice:focus-visible,.rm-scale-option:focus-visible,.rm-progress-item:focus-visible,.rm-unknown:focus-visible{outline:3px solid #8da9ff;outline-offset:3px}.rm-button:disabled{opacity:.5;cursor:not-allowed}.rm-how{margin-top:18px;padding:14px;background:var(--wf-info-bg);border-radius:10px}
.rm-question textarea{width:100%;min-height:190px;border:1px solid var(--wf-border);border-radius:14px;padding:16px;resize:vertical;color:var(--wf-text);margin-top:18px}.rm-question textarea:focus{outline:3px solid #c7d4ff;border-color:var(--wf-primary)}.rm-count{display:flex;justify-content:space-between;gap:14px;color:var(--wf-muted);font-size:12px;margin-top:7px}.rm-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.rm-value-meta,.rm-section-heading{display:flex;justify-content:space-between;align-items:center;color:var(--wf-muted);font-size:13px}.rm-mini-progress{height:4px;background:#e9ecf5;border-radius:999px;margin:10px 0 34px}.rm-mini-progress span{display:block;height:100%;background:var(--wf-primary);border-radius:999px}.rm-value-card fieldset{border:0;padding:0;margin:30px 0 0}.rm-value-card legend{font-weight:700;margin-bottom:12px}.rm-scale{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.rm-scale-option,.rm-choice{border:1px solid var(--wf-border);background:#fff;color:var(--wf-text);border-radius:9px;min-height:46px;cursor:pointer}.rm-scale-option.is-selected,.rm-choice.is-selected{background:var(--wf-primary);border-color:var(--wf-primary);color:#fff}.rm-scale-labels{display:flex;justify-content:space-between;color:var(--wf-muted);font-size:12px;margin:7px 0 16px}.rm-unknown{width:100%;border:0;border-radius:9px;background:#f0f1f5;min-height:42px;color:var(--wf-text);cursor:pointer}.rm-unknown.is-selected{box-shadow:inset 0 0 0 2px var(--wf-primary);color:var(--wf-primary);font-weight:700}
.rm-boundary-list{display:grid;gap:14px;margin-top:26px}.rm-boundary{background:#fff;border:1px solid var(--wf-border);border-radius:var(--wf-radius-md);padding:18px;display:grid;grid-template-columns:1fr 270px;gap:20px;align-items:center}.rm-boundary h2{font-size:18px;margin:2px 0}.rm-boundary.is-preference{background:#f1f2ff;border-color:#cdd2ff}.rm-choice-group{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.rm-status{border:1px solid var(--wf-info-border);background:var(--wf-info-bg);padding:12px 15px;border-radius:12px;display:flex;gap:10px;align-items:center;margin-bottom:18px}.rm-status-error{background:var(--wf-danger-bg);border-color:var(--wf-danger-border)}.rm-status p{margin:0;flex:1}.rm-close{background:none;border:0;font-size:22px;cursor:pointer}.rm-status-panel{display:flex;gap:14px;border:1px solid;padding:20px;border-radius:var(--wf-radius-md);margin:18px 0}.rm-status-panel h2{font-size:19px;margin:0 0 7px}.rm-status-panel p{margin:0}.rm-support{background:var(--wf-support-bg);border-color:var(--wf-support-border)}.rm-warning{background:var(--wf-warning-bg);border-color:var(--wf-warning-border)}.rm-info{background:var(--wf-info-bg);border-color:var(--wf-info-border)}.rm-route-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}.rm-route-cards span{background:rgba(255,255,255,.65);padding:9px;border-radius:9px;display:flex;align-items:center;gap:7px}.rm-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}.rm-summary-section{background:#fff;border:1px solid var(--wf-border);border-radius:var(--wf-radius-md);padding:17px}.rm-summary-section h2{font-size:17px;margin:0}.rm-summary-section ul{list-style:none;padding:0;margin:12px 0 0}.rm-summary-section li{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #eef0f5;padding:9px 0}.rm-delete-link{color:var(--wf-danger);margin-top:28px}.rm-empty{color:var(--wf-muted)}
.rm-dialog-backdrop{position:fixed;inset:0;background:rgba(14,20,48,.58);display:grid;place-items:center;padding:20px;z-index:99999}.rm-dialog{background:#fff;border:1px solid var(--wf-danger-border);border-radius:20px;padding:30px;max-width:480px;box-shadow:0 24px 80px rgba(0,0,0,.25)}.rm-dialog h2{text-align:center}.rm-danger-icon{margin:auto;width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:var(--wf-danger-bg);color:var(--wf-danger);font-size:28px}.rm-danger{background:var(--wf-danger);color:#fff}.rm-loading,.rm-human-boot{min-height:360px;display:grid;place-items:center;align-content:center;gap:14px}.rm-spinner{width:28px;height:28px;border:3px solid #d9ddea;border-top-color:var(--wf-primary);border-radius:50%;animation:rm-spin .8s linear infinite}@keyframes rm-spin{to{transform:rotate(360deg)}}.rm-placeholder{text-align:center}.rm-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:800px){.rm-topbar{height:66px;padding:0 18px}.rm-brand small{display:none}.rm-app-grid{display:block;padding:18px 16px 60px}.rm-progress{position:static;flex-direction:row;overflow-x:auto;margin:0 0 18px;padding-bottom:5px}.rm-progress-item{font-size:0;padding:5px}.rm-progress-item span{font-size:12px}.rm-hero,.rm-card{padding:24px 20px}.rm-trust{grid-template-columns:1fr}.rm-boundary{grid-template-columns:1fr}.rm-summary-grid{grid-template-columns:1fr}.rm-count{display:block}.rm-count span{display:block;margin-bottom:3px}}
@media(max-width:460px){.rm-human-root h1{font-size:30px}.rm-scale{gap:4px}.rm-scale-option{min-height:42px}.rm-choice-group{grid-template-columns:1fr}.rm-route-cards{grid-template-columns:1fr}.rm-actions .rm-button{width:100%}.rm-beta{font-size:10px}}
@media(prefers-reduced-motion:reduce){.rm-spinner{animation:none}}
.rm-entry-profile fieldset{border:0;padding:0;margin:26px 0}.rm-entry-profile legend,.rm-entry-select>span{font-weight:750;display:block;margin-bottom:11px}.rm-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.rm-choice-grid .rm-choice,.rm-entry-profile .rm-need-mode .rm-choice{padding:11px 13px}.rm-entry-select{display:block;margin:26px 0}.rm-entry-select select{width:100%;min-height:48px;border:1px solid var(--wf-border);border-radius:11px;padding:10px 13px;background:#fff;color:var(--wf-text);font:inherit}.rm-entry-needs{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:15px}.rm-entry-check{display:flex;gap:9px;align-items:flex-start;border:1px solid var(--wf-border);border-radius:10px;padding:11px}.rm-entry-check input{margin-top:4px}.rm-boundary-kind,.rm-card-kind{color:var(--wf-primary);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin:0}.rm-card-actions{display:flex;gap:16px;flex-wrap:wrap}.rm-more-results{margin-top:14px;border-top:1px solid var(--wf-border);padding-top:14px}.rm-more-results summary{cursor:pointer;color:var(--wf-primary);font-weight:750;margin-bottom:14px}.rm-more-results .rm-result-card{margin-top:12px}@media(max-width:800px){.rm-choice-grid,.rm-entry-needs{grid-template-columns:1fr}}
.rm-result-list{display:grid;gap:16px;margin-top:26px}.rm-result-card,.rm-place-card{background:#fff;border:1px solid var(--wf-border);border-radius:var(--wf-radius-md);padding:20px}.rm-result-card.is-zero{border-color:#aeb7df;background:#f8f9ff}.rm-result-heading{display:flex;justify-content:space-between;gap:12px}.rm-result-heading h2,.rm-place-card h3{margin:3px 0 8px}.rm-zero-badge{background:#e8ebff;color:var(--wf-primary);border-radius:999px;padding:6px 10px;font-size:12px;height:max-content}.rm-result-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.rm-result-columns h3{font-size:14px}.rm-result-columns ul{padding-left:20px}.rm-conditional,.rm-safety-note{background:var(--wf-warning-bg);border:1px solid var(--wf-warning-border);border-radius:9px;padding:11px;font-size:13px}.rm-catalog-section{margin-top:38px}.rm-place-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:800px){.rm-result-columns,.rm-place-grid{grid-template-columns:1fr}}
.rm-location-card{display:flex;gap:14px;margin-top:24px;padding:20px;background:#fff;border:1px solid var(--wf-border);border-radius:var(--wf-radius-md)}.rm-location-card h2{font-size:20px;margin:0 0 5px}.rm-location-card p{margin:0;color:var(--wf-muted)}.rm-location-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:15px}.rm-location-controls .rm-button{margin:0}.rm-location-controls input{min-height:46px;border:1px solid var(--wf-border);border-radius:12px;padding:10px 13px;color:var(--wf-text)}.rm-location-controls input:focus{outline:3px solid #c7d4ff;border-color:var(--wf-primary)}.rm-location-privacy{font-size:12px;margin-top:10px!important}.rm-horizon{margin-top:34px;padding:24px;border:1px solid var(--wf-border);border-radius:var(--wf-radius-lg);background:#fff}.rm-horizon-now{border-top:5px solid #d98b45}.rm-horizon-practice{border-top:5px solid #458b69}.rm-horizon-way{border-top:5px solid #4d5eb7}.rm-horizon-label{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--wf-primary);margin:0}.rm-horizon h2{margin:4px 0 0}.rm-zero-state{margin-top:18px;padding:18px;background:#f6f7fa;border:1px dashed var(--wf-border);border-radius:var(--wf-radius-md)}.rm-zero-state h3{font-size:17px;margin:0 0 5px}.rm-zero-state p{margin:0;color:var(--wf-muted)}.rm-offer-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px}.rm-offer-meta div{background:#f7f8fc;border-radius:9px;padding:10px}.rm-offer-meta dt{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--wf-muted)}.rm-offer-meta dd{margin:2px 0 0}.rm-map-link{display:inline-flex;align-items:center;gap:7px;margin:12px 0;color:var(--wf-primary);font-weight:700;text-underline-offset:3px}@media(max-width:800px){.rm-location-card{display:block}.rm-location-card>.rm-icon{margin-bottom:10px}.rm-location-controls{align-items:stretch}.rm-location-controls>*{width:100%}.rm-location-controls>span{text-align:center}.rm-location-controls input,.rm-offer-meta{width:100%}.rm-offer-meta{grid-template-columns:1fr}.rm-horizon{padding:20px 16px}}
.rm-primary-clarification>p:not(.rm-step){color:var(--wf-muted)}.rm-need-mode{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:26px 0 18px}.rm-need-mode .rm-choice{padding:12px 16px;font-weight:700}.rm-need-instruction{font-weight:700;color:var(--wf-text)!important}.rm-need-options{display:grid;gap:10px;margin-top:16px}.rm-need-option{width:100%;display:grid;gap:4px;text-align:left;border:1px solid var(--wf-border);background:#fff;color:var(--wf-text);border-radius:var(--wf-radius-md);padding:16px 18px;cursor:pointer}.rm-need-option:hover{border-color:#9da6d6;background:#fafaff}.rm-need-option.is-selected{border-color:var(--wf-primary);box-shadow:inset 0 0 0 1px var(--wf-primary);background:#f3f4ff}.rm-need-option:focus-visible{outline:3px solid #8da9ff;outline-offset:3px}.rm-need-option strong{font-size:17px}.rm-need-option span,.rm-need-summary p,.rm-primary-summary p{color:var(--wf-muted)}.rm-need-summary{border:1px solid var(--wf-border);border-radius:var(--wf-radius-md);padding:16px 18px;background:#fff}.rm-need-summary strong{font-size:17px}.rm-need-summary p{margin:5px 0 0}.rm-primary-summary{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:28px 0;padding:20px;border:1px solid #cdd2ff;border-radius:var(--wf-radius-md);background:#f6f7ff}.rm-primary-summary h2{margin:3px 0 5px}.rm-primary-summary p{margin:0}.rm-primary-summary .rm-button{flex:none}@media(max-width:800px){.rm-need-mode{grid-template-columns:1fr}.rm-primary-summary{display:block}.rm-primary-summary .rm-button{margin-top:16px;width:100%}}
.rm-selected-needs{grid-template-columns:repeat(2,minmax(0,1fr));margin:24px 0}.rm-need-result-group{margin-top:18px;border:1px solid var(--wf-border);border-radius:var(--wf-radius-md);padding:0 18px 18px;background:#fafbff}.rm-need-result-group summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;cursor:pointer;list-style:none}.rm-need-result-group summary::-webkit-details-marker{display:none}.rm-need-result-group summary span:first-child{display:grid;gap:2px}.rm-need-result-group summary small,.rm-response-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--wf-primary);font-weight:800}.rm-need-result-group summary strong{font-size:20px}.rm-details-toggle{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#eef0ff;color:var(--wf-primary);font-size:20px;transition:transform .2s ease}.rm-need-result-group[open] .rm-details-toggle{transform:rotate(45deg)}.rm-need-description{color:var(--wf-muted);margin:-5px 0 18px}.rm-response-card{border:1px solid #c9d0f3;border-left:5px solid var(--wf-primary);border-radius:var(--wf-radius-md);background:#fff;padding:17px 18px;margin-top:12px}.rm-response-card h4{font-size:19px;margin:3px 0 5px}.rm-response-card p:last-child{margin:0;color:var(--wf-muted)}.rm-need-result-group .rm-result-list{margin-top:14px}.rm-need-result-group .rm-zero-state{margin-top:14px}.rm-technical-state{background:var(--wf-warning-bg);border-color:var(--wf-warning-border)}.rm-coverage-note{margin:16px 0 0;padding:12px 14px;border-radius:10px;background:#f6f7fa;color:var(--wf-muted);font-size:14px}.rm-zero-path-note{margin-top:28px}@media(max-width:800px){.rm-selected-needs{grid-template-columns:1fr}.rm-need-result-group{padding:0 14px 14px}.rm-need-result-group summary strong{font-size:18px}}
.rm-synthetic-global{position:sticky;top:0;z-index:20;display:flex;justify-content:center;gap:12px;align-items:center;padding:11px 24px;background:#fff4cc;border-top:1px solid #d7b94e;border-bottom:1px solid #d7b94e;color:#463b15}.rm-synthetic-global span{font-size:13px}.rm-result-card.is-synthetic{border-color:#d7b94e;background:#fffdf5}.rm-test-badge{background:#463b15;color:#fff6cf;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;letter-spacing:.08em;height:max-content}.rm-synthetic-record{margin-top:14px;padding:11px 12px;border:1px solid #d7b94e;border-radius:9px;background:#fff4cc;color:#463b15;font-size:13px}.rm-synthetic-record strong{display:block;margin-bottom:2px}@media(max-width:800px){.rm-synthetic-global{position:static;display:block}.rm-synthetic-global span{display:block;margin-top:3px}}
.rm-staging-access{position:sticky;top:0;z-index:20;display:flex;justify-content:center;gap:18px;align-items:center;padding:12px 24px;background:#eef2ff;border-top:1px solid #aab8ef;border-bottom:1px solid #aab8ef;color:#19245b}.rm-staging-access div{display:grid;gap:2px}.rm-staging-access span{font-size:13px}.rm-staging-access a{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:8px 14px;background:var(--wf-primary);color:#fff;text-decoration:none;font-weight:800;white-space:nowrap}.rm-staging-access.is-error{background:var(--wf-danger-bg);border-color:var(--wf-danger-border);color:var(--wf-danger)}.rm-response-list{display:grid;gap:10px;margin:14px 0}.rm-response-list .rm-response-card{margin-top:0}@media(max-width:800px){.rm-staging-access{position:static;align-items:flex-start;flex-direction:column;padding:12px 18px}.rm-staging-access a{width:100%}}

/* Wayfinder UI system - light, space, nature and neutrality. */
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("fonts/inter-latin-ext.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: "Inter";
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("fonts/inter-latin.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;
}

@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/playfair-display-600-latin-ext.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: "Playfair Display";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/playfair-display-600-latin.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 {
  --wf-bg: #faf7f2;
  --wf-surface: #fffdfc;
  --wf-text: #1c1f23;
  --wf-text-muted: #686f74;
  --wf-muted: var(--wf-text-muted);
  --wf-border: #ded8cf;
  --wf-light: #d6a24c;
  --wf-green: #7a8f7a;
  --wf-water: #6c8292;
  --wf-earth: #b87342;
  --wf-primary: #70551d;
  --wf-primary-hover: #594315;
  --wf-focus: #8a6a2f;
  --wf-disabled: #e6e2dc;
  --wf-support-bg: #eff4ee;
  --wf-support-border: #bdcbbb;
  --wf-warning-bg: #fff7e8;
  --wf-warning-border: #d6a24c;
  --wf-info-bg: #f1f4f5;
  --wf-info-border: #b8c4ca;
  --wf-danger-bg: #fff0f1;
  --wf-danger-border: #d9a5aa;
  --wf-danger: #a42e3d;
  --wf-radius-sm: 10px;
  --wf-radius-md: 16px;
  --wf-radius-lg: 16px;
  --wf-shadow: 0 18px 50px rgba(58, 48, 36, .08);
}

.rm-human-root {
  overflow-x: clip;
  background:
    radial-gradient(circle at 8% 3%, rgba(214, 162, 76, .08), transparent 26rem),
    var(--wf-bg);
  color: var(--wf-text);
  font-family: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.55;
}

.rm-human-root button,
.rm-human-root input,
.rm-human-root select,
.rm-human-root textarea {
  font-family: inherit;
}

.rm-app-shell {
  min-height: 100vh;
  background: linear-gradient(180deg, rgba(255, 253, 252, .42), transparent 28rem);
}

.rm-topbar {
  height: 72px;
  padding: 0 clamp(20px, 4vw, 56px);
  border-color: rgba(222, 216, 207, .82);
  background: rgba(255, 253, 252, .9);
  backdrop-filter: blur(16px);
}

.rm-brand {
  gap: 12px;
  color: var(--wf-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 22px;
  font-weight: 600;
  letter-spacing: .12em;
}

.rm-brand small {
  margin-top: 2px;
  color: var(--wf-text-muted);
  font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
  font-size: 10px;
  font-weight: 500;
}

.rm-mark {
  position: relative;
  width: 34px;
  height: 34px;
  border: 1px solid var(--wf-focus);
  color: transparent;
}

.rm-mark::before {
  content: "";
  width: 10px;
  height: 10px;
  border: 1.5px solid var(--wf-focus);
  border-radius: 50%;
  box-shadow: 0 8px 18px rgba(214, 162, 76, .34);
}

.rm-beta {
  border: 1px solid #e1d3bd;
  background: #f6efe4;
  color: #674f24;
  font-weight: 600;
}

.rm-app-grid {
  grid-template-columns: 200px minmax(0, 820px);
  gap: clamp(28px, 5vw, 72px);
  max-width: 1160px;
  padding: 48px 32px 80px;
}

.rm-progress {
  gap: 4px;
}

.rm-progress-item {
  min-height: 44px;
  padding: 9px 10px;
  border-radius: 11px;
  color: var(--wf-text-muted);
  font-size: 13px;
  font-weight: 500;
}

.rm-progress-item span {
  border-color: var(--wf-border);
  background: rgba(255, 253, 252, .74);
}

.rm-progress-item.is-active {
  background: #eff2ed;
  color: #435343;
  font-weight: 600;
}

.rm-progress-item.is-active span,
.rm-progress-item.is-complete span {
  border-color: var(--wf-green);
  background: var(--wf-green);
  color: #111411;
}

.rm-progress-item:disabled {
  opacity: .64;
}

.rm-hero,
.rm-card,
.rm-summary-section,
.rm-result-card,
.rm-place-card,
.rm-location-card,
.rm-horizon,
.rm-need-summary,
.rm-need-result-group {
  border-color: var(--wf-border);
  background: var(--wf-surface);
  box-shadow: var(--wf-shadow);
}

.rm-hero,
.rm-card {
  padding: clamp(28px, 5vw, 48px);
  border-radius: 16px;
}

.rm-human-root h1 {
  max-width: 760px;
  margin: 8px 0 18px;
  color: var(--wf-text);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(32px, 4vw, 44px);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -.025em;
  text-wrap: balance;
}

.rm-lead {
  color: #4e5559;
}

.rm-eyebrow,
.rm-step,
.rm-code,
.rm-boundary-kind,
.rm-card-kind,
.rm-horizon-label,
.rm-response-label,
.rm-need-result-group summary small {
  color: var(--wf-primary);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .08em;
}

.rm-trust article {
  border: 1px solid #ece5dc;
  background: #fbf8f3;
}

.rm-icon {
  background: #f1eadf;
  color: var(--wf-primary);
}

.rm-button {
  min-height: 48px;
  padding: 11px 22px;
  border-radius: 11px;
  font-size: 15px;
  font-weight: 600;
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease;
}

.rm-primary {
  background: var(--wf-light);
  color: var(--wf-text);
}

.rm-primary:hover {
  background: #c48d35;
  box-shadow: 0 10px 24px rgba(112, 85, 29, .16);
  transform: translateY(-1px);
}

.rm-secondary {
  border-color: var(--wf-border);
  background: rgba(255, 253, 252, .88);
  color: var(--wf-text);
}

.rm-secondary:hover {
  border-color: #bfb5a8;
  background: var(--wf-surface);
}

.rm-tertiary,
.rm-link,
.rm-delete-link,
.rm-map-link,
.rm-more-results summary {
  color: var(--wf-primary);
}

.rm-button:focus-visible,
.rm-choice:focus-visible,
.rm-scale-option:focus-visible,
.rm-progress-item:focus-visible,
.rm-unknown:focus-visible,
.rm-need-option:focus-visible,
.rm-entry-select select:focus-visible,
.rm-location-controls input:focus-visible,
.rm-question textarea:focus-visible {
  outline: 3px solid var(--wf-focus);
  outline-offset: 3px;
}

.rm-button:disabled,
.rm-scale-option:disabled,
.rm-choice:disabled {
  border-color: var(--wf-disabled);
  background: var(--wf-disabled);
  color: #777b7e;
  opacity: 1;
}

.rm-choice,
.rm-entry-select select,
.rm-entry-check,
.rm-location-controls input,
.rm-question textarea,
.rm-need-option {
  border-color: var(--wf-border);
  border-radius: 11px;
  background: var(--wf-surface);
}

.rm-choice:hover,
.rm-need-option:hover,
.rm-entry-check:hover {
  border-color: #b9b0a4;
  background: #fbf8f3;
}

.rm-choice.is-selected,
.rm-need-option.is-selected {
  border-color: var(--wf-green);
  background: #e8eee6;
  color: #233023;
  box-shadow: inset 0 0 0 1px var(--wf-green);
}

.rm-info {
  border-color: var(--wf-info-border);
  background: var(--wf-info-bg);
}

.rm-support {
  border-color: var(--wf-support-border);
  background: var(--wf-support-bg);
}

.rm-warning {
  border-color: var(--wf-warning-border);
  background: var(--wf-warning-bg);
}

.rm-value-card {
  --wf-theme-accent: var(--wf-light);
  --wf-theme-accent-strong: #8a6426;
  --wf-theme-text: var(--wf-text);
  --wf-theme-muted: #4f5659;
  --wf-theme-panel: rgba(255, 253, 252, .58);
  --wf-theme-fallback: #f3eadb;
  --wf-theme-image: none;
  --wf-theme-position: 62% 50%;
  --wf-theme-scrim: linear-gradient(90deg, rgba(255, 253, 248, .92) 0%, rgba(255, 253, 248, .74) 45%, rgba(255, 253, 248, .08) 78%, transparent 100%);
  --wf-theme-bottom-scrim: linear-gradient(180deg, transparent 45%, rgba(246, 239, 227, .12) 60%, rgba(232, 216, 190, .62) 100%);
  position: relative;
  isolation: isolate;
  display: flex;
  min-height: 640px;
  overflow: hidden;
  flex-direction: column;
  color: var(--wf-theme-text);
  animation: wf-soft-enter .36s ease both;
}

.rm-value-card::before,
.rm-value-card::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.rm-value-card::before {
  z-index: -2;
  inset: 0;
  background-color: var(--wf-theme-fallback);
  background-image: var(--wf-theme-scrim), var(--wf-theme-image);
  background-position: center, var(--wf-theme-position);
  background-repeat: no-repeat;
  background-size: cover;
}

.rm-value-card::after {
  z-index: -1;
  inset: 0;
  border-radius: inherit;
  background: var(--wf-theme-bottom-scrim);
}

.rm-value-card > * {
  position: relative;
  z-index: 1;
}

.rm-value-card .rm-value-meta {
  color: var(--wf-theme-muted);
  font-size: 13px;
  font-weight: 500;
}

.rm-value-card .rm-value-meta span:first-child {
  color: var(--wf-theme-accent-strong);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.rm-value-card .rm-mini-progress {
  height: 3px;
  margin: 12px 0 clamp(24px, 4vw, 38px);
  background: rgba(104, 111, 116, .16);
}

.rm-value-card .rm-mini-progress span {
  background: var(--wf-theme-accent-strong);
}

.rm-value-card h1 {
  max-width: 610px;
  margin: 0 0 12px;
  color: var(--wf-theme-text);
  font-size: clamp(30px, 3.2vw, 34px);
}

.rm-value-description,
.rm-value-scene,
.rm-value-question {
  max-width: 580px;
  overflow-wrap: anywhere;
  color: var(--wf-theme-muted);
  font-size: 18px;
  line-height: 1.48;
}

.rm-value-scene {
  margin: 0 0 16px;
}

.rm-value-question {
  margin: 0;
  color: var(--wf-theme-text);
  font-weight: 650;
}

.rm-section-intro {
  max-width: 640px;
  margin: 0 0 22px;
  padding: 14px 16px;
  border-left: 4px solid var(--wf-theme-accent-strong);
  border-radius: 0 10px 10px 0;
  background: rgba(255, 253, 252, .72);
  color: var(--wf-theme-text);
  line-height: 1.5;
}

.rm-value-card fieldset {
  margin-top: clamp(32px, 5vw, 46px);
  padding: 22px 18px 18px;
  border: 1px solid rgba(222, 216, 207, .88);
  border-radius: 16px;
  background: var(--wf-theme-panel);
  color: var(--wf-text);
  box-shadow: 0 12px 36px rgba(52, 43, 33, .07);
  backdrop-filter: blur(6px);
}

.rm-value-card fieldset legend {
  float: left;
  width: 100%;
  margin: 0 0 16px;
  padding: 0;
  font-size: 14px;
  font-weight: 600;
}

.rm-value-card fieldset legend + .rm-scale {
  clear: both;
}

.rm-value-card .rm-scale {
  gap: 8px;
}

.rm-value-card .rm-scale-option {
  position: relative;
  min-height: 64px;
  border-color: rgba(196, 186, 173, .92);
  border-radius: 10px;
  background: rgba(255, 253, 252, .86);
  color: var(--wf-text);
  font-size: 17px;
  font-weight: 500;
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease;
}

.rm-value-card .rm-scale-option:hover {
  border-color: var(--wf-theme-accent-strong);
  background: var(--wf-surface);
  transform: translateY(-1px);
}

.rm-value-card .rm-scale-option.is-selected {
  border-color: var(--wf-theme-accent-strong);
  background: var(--wf-theme-accent);
  color: #151719;
  box-shadow: 0 8px 20px rgba(49, 44, 36, .16), inset 0 0 0 1px rgba(28, 31, 35, .24);
  font-weight: 600;
  transform: translateY(-2px);
}

.rm-value-card .rm-scale-option.is-selected::after {
  content: "✓";
  position: absolute;
  top: 3px;
  right: 5px;
  font-size: 10px;
  font-weight: 600;
}

.rm-value-card .rm-scale-labels {
  gap: 16px;
  margin: 9px 2px 16px;
  color: var(--wf-text-muted);
  font-size: 12px;
}

.rm-value-card .rm-scale-labels span {
  max-width: 48%;
  overflow-wrap: anywhere;
}

.rm-value-card .rm-scale-labels span:last-child {
  text-align: right;
}

.rm-boundary > div:first-child {
  min-width: 0;
}

.rm-boundary .rm-boundary-scene,
.rm-boundary .rm-boundary-question,
.rm-boundary-intro {
  overflow-wrap: anywhere;
  line-height: 1.5;
}

.rm-boundary .rm-boundary-scene {
  margin-top: 10px;
}

.rm-boundary .rm-boundary-question {
  margin-top: 10px;
  color: var(--wf-text);
  font-weight: 650;
}

.rm-boundary-intro {
  max-width: 760px;
  color: var(--wf-muted);
}

.rm-value-card .rm-unknown {
  min-height: 44px;
  border: 1px solid transparent;
  background: rgba(230, 226, 220, .78);
  font-size: 14px;
  font-weight: 500;
}

.rm-value-card .rm-unknown:hover {
  border-color: #bdb5aa;
  background: #eeeae4;
}

.rm-value-card .rm-unknown.is-selected {
  border-color: var(--wf-theme-accent-strong);
  background: var(--wf-surface);
  color: var(--wf-text);
  box-shadow: inset 0 0 0 1px var(--wf-theme-accent-strong);
}

.rm-helper {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  margin: 16px 0 0;
  color: var(--wf-theme-muted);
  font-size: 13px;
}

.rm-helper span {
  display: inline-grid;
  width: 18px;
  height: 18px;
  flex: none;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  font-family: Georgia, serif;
  font-size: 12px;
}

.rm-value-card .rm-actions {
  margin-top: 22px;
}

.rm-value-card .rm-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  background: var(--wf-theme-accent);
  color: #151719;
  box-shadow: 0 10px 24px rgba(52, 43, 33, .14);
}

.rm-value-card .rm-primary:hover {
  background: var(--wf-theme-accent);
  box-shadow: 0 13px 28px rgba(52, 43, 33, .2);
}

.rm-value-card .rm-secondary {
  border-color: rgba(119, 112, 102, .36);
  background: rgba(255, 253, 252, .68);
  color: var(--wf-theme-text);
  backdrop-filter: blur(8px);
}

.rm-theme-direction {
  --wf-theme-accent: #d6a24c;
  --wf-theme-accent-strong: #805b1d;
  --wf-theme-fallback: #e9d7b8;
  --wf-theme-image: image-set(url("backgrounds/direction-720.jpg") 1x, url("backgrounds/direction.jpg") 2x);
  --wf-theme-position: 58% 54%;
  --wf-theme-scrim: linear-gradient(90deg, rgba(255, 251, 242, .94) 0%, rgba(255, 251, 242, .76) 44%, rgba(255, 251, 242, .05) 76%, transparent 100%);
  --wf-theme-bottom-scrim: linear-gradient(180deg, transparent 42%, rgba(222, 190, 136, .12) 61%, rgba(192, 151, 84, .58) 100%);
}

.rm-theme-belonging {
  --wf-theme-accent: #8fa08a;
  --wf-theme-accent-strong: #4f664e;
  --wf-theme-fallback: #e9e3d7;
  --wf-theme-image: image-set(url("backgrounds/belonging-720.jpg") 1x, url("backgrounds/belonging.jpg") 2x);
  --wf-theme-position: 66% 48%;
  --wf-theme-scrim: linear-gradient(90deg, rgba(250, 247, 239, .94) 0%, rgba(250, 247, 239, .72) 43%, rgba(250, 247, 239, .03) 74%, transparent 100%);
  --wf-theme-bottom-scrim: linear-gradient(180deg, transparent 43%, rgba(235, 231, 220, .12) 62%, rgba(215, 207, 191, .68) 100%);
}

.rm-theme-silence {
  --wf-theme-accent: #8197a7;
  --wf-theme-accent-strong: #425f73;
  --wf-theme-fallback: #dbe2e5;
  --wf-theme-image: image-set(url("backgrounds/silence-720.jpg") 1x, url("backgrounds/silence.jpg") 2x);
  --wf-theme-position: 65% 50%;
  --wf-theme-scrim: linear-gradient(90deg, rgba(246, 247, 245, .94) 0%, rgba(246, 247, 245, .76) 44%, rgba(246, 247, 245, .06) 74%, transparent 100%);
  --wf-theme-bottom-scrim: linear-gradient(180deg, transparent 42%, rgba(211, 220, 222, .1) 60%, rgba(183, 199, 205, .68) 100%);
}

.rm-theme-grounding {
  --wf-theme-accent: #c47b44;
  --wf-theme-accent-strong: #e5a56d;
  --wf-theme-text: #fffaf2;
  --wf-theme-muted: rgba(255, 250, 242, .82);
  --wf-theme-panel: rgba(255, 253, 252, .62);
  --wf-theme-fallback: #493726;
  --wf-theme-image: image-set(url("backgrounds/grounding-720.jpg") 1x, url("backgrounds/grounding.jpg") 2x);
  --wf-theme-position: 62% 50%;
  --wf-theme-scrim: linear-gradient(90deg, rgba(31, 25, 20, .9) 0%, rgba(31, 25, 20, .7) 44%, rgba(31, 25, 20, .06) 75%, transparent 100%);
  --wf-theme-bottom-scrim: linear-gradient(180deg, transparent 40%, rgba(39, 29, 21, .14) 58%, rgba(39, 29, 21, .72) 100%);
}

.rm-theme-rhythm {
  --wf-theme-accent: #b58c54;
  --wf-theme-accent-strong: #72552c;
  --wf-theme-fallback: #e8ddca;
  --wf-theme-image: image-set(url("backgrounds/rhythm-720.jpg") 1x, url("backgrounds/rhythm.jpg") 2x);
  --wf-theme-position: 66% 49%;
  --wf-theme-scrim: linear-gradient(90deg, rgba(251, 248, 241, .94) 0%, rgba(251, 248, 241, .73) 44%, rgba(251, 248, 241, .04) 75%, transparent 100%);
  --wf-theme-bottom-scrim: linear-gradient(180deg, transparent 42%, rgba(224, 210, 186, .12) 61%, rgba(200, 179, 145, .64) 100%);
}

.rm-theme-nature {
  --wf-theme-accent: #879b7f;
  --wf-theme-accent-strong: #b9d2ae;
  --wf-theme-text: #fffdf7;
  --wf-theme-muted: rgba(255, 253, 247, .84);
  --wf-theme-fallback: #344237;
  --wf-theme-image: image-set(url("backgrounds/nature-720.jpg") 1x, url("backgrounds/nature.jpg") 2x);
  --wf-theme-position: 65% 54%;
  --wf-theme-scrim: linear-gradient(90deg, rgba(25, 34, 27, .9) 0%, rgba(25, 34, 27, .7) 43%, rgba(25, 34, 27, .04) 75%, transparent 100%);
  --wf-theme-bottom-scrim: linear-gradient(180deg, transparent 40%, rgba(26, 38, 29, .12) 58%, rgba(26, 38, 29, .7) 100%);
}

.rm-theme-body-breath {
  --wf-theme-accent: #91a3a0;
  --wf-theme-accent-strong: #526c69;
  --wf-theme-fallback: #eee7db;
  --wf-theme-image: image-set(url("backgrounds/body-breath-720.jpg") 1x, url("backgrounds/body-breath.jpg") 2x);
  --wf-theme-position: 68% 47%;
  --wf-theme-scrim: linear-gradient(90deg, rgba(251, 248, 241, .95) 0%, rgba(251, 248, 241, .74) 44%, rgba(251, 248, 241, .04) 75%, transparent 100%);
  --wf-theme-bottom-scrim: linear-gradient(180deg, transparent 42%, rgba(231, 224, 212, .1) 60%, rgba(212, 201, 184, .66) 100%);
}

.rm-theme-transience {
  --wf-theme-accent: #c28d62;
  --wf-theme-accent-strong: #7c5132;
  --wf-theme-fallback: #d6d1ca;
  --wf-theme-image: image-set(url("backgrounds/transience-720.jpg") 1x, url("backgrounds/transience.jpg") 2x);
  --wf-theme-position: 66% 48%;
  --wf-theme-scrim: linear-gradient(90deg, rgba(248, 246, 242, .94) 0%, rgba(248, 246, 242, .74) 44%, rgba(248, 246, 242, .03) 75%, transparent 100%);
  --wf-theme-bottom-scrim: linear-gradient(180deg, transparent 42%, rgba(202, 198, 191, .12) 61%, rgba(171, 163, 153, .68) 100%);
}

.rm-theme-hope {
  --wf-theme-accent: #d7aa56;
  --wf-theme-accent-strong: #7e5a20;
  --wf-theme-fallback: #ebdfc6;
  --wf-theme-image: image-set(url("backgrounds/hope-720.jpg") 1x, url("backgrounds/hope.jpg") 2x);
  --wf-theme-position: 68% 43%;
  --wf-theme-scrim: linear-gradient(90deg, rgba(255, 250, 239, .95) 0%, rgba(255, 250, 239, .75) 44%, rgba(255, 250, 239, .04) 75%, transparent 100%);
  --wf-theme-bottom-scrim: linear-gradient(180deg, transparent 42%, rgba(229, 211, 173, .12) 60%, rgba(204, 174, 115, .6) 100%);
}

.rm-theme-freedom {
  --wf-theme-accent: #87a1b0;
  --wf-theme-accent-strong: #48687a;
  --wf-theme-fallback: #d8e2e5;
  --wf-theme-image: image-set(url("backgrounds/freedom-720.jpg") 1x, url("backgrounds/freedom.jpg") 2x);
  --wf-theme-position: 59% 48%;
  --wf-theme-scrim: linear-gradient(90deg, rgba(247, 249, 247, .94) 0%, rgba(247, 249, 247, .75) 44%, rgba(247, 249, 247, .04) 75%, transparent 100%);
  --wf-theme-bottom-scrim: linear-gradient(180deg, transparent 42%, rgba(211, 220, 218, .1) 60%, rgba(176, 194, 188, .66) 100%);
}

@supports (background-image: image-set(url("backgrounds/direction-720.webp") type("image/webp") 1x)) {
  .rm-theme-direction {
    --wf-theme-image: image-set(url("backgrounds/direction-720.webp") type("image/webp") 1x, url("backgrounds/direction.webp") type("image/webp") 2x);
  }

  .rm-theme-belonging {
    --wf-theme-image: image-set(url("backgrounds/belonging-720.webp") type("image/webp") 1x, url("backgrounds/belonging.webp") type("image/webp") 2x);
  }

  .rm-theme-silence {
    --wf-theme-image: image-set(url("backgrounds/silence-720.webp") type("image/webp") 1x, url("backgrounds/silence.webp") type("image/webp") 2x);
  }

  .rm-theme-grounding {
    --wf-theme-image: image-set(url("backgrounds/grounding-720.webp") type("image/webp") 1x, url("backgrounds/grounding.webp") type("image/webp") 2x);
  }

  .rm-theme-rhythm {
    --wf-theme-image: image-set(url("backgrounds/rhythm-720.webp") type("image/webp") 1x, url("backgrounds/rhythm.webp") type("image/webp") 2x);
  }

  .rm-theme-nature {
    --wf-theme-image: image-set(url("backgrounds/nature-720.webp") type("image/webp") 1x, url("backgrounds/nature.webp") type("image/webp") 2x);
  }

  .rm-theme-body-breath {
    --wf-theme-image: image-set(url("backgrounds/body-breath-720.webp") type("image/webp") 1x, url("backgrounds/body-breath.webp") type("image/webp") 2x);
  }

  .rm-theme-transience {
    --wf-theme-image: image-set(url("backgrounds/transience-720.webp") type("image/webp") 1x, url("backgrounds/transience.webp") type("image/webp") 2x);
  }

  .rm-theme-hope {
    --wf-theme-image: image-set(url("backgrounds/hope-720.webp") type("image/webp") 1x, url("backgrounds/hope.webp") type("image/webp") 2x);
  }

  .rm-theme-freedom {
    --wf-theme-image: image-set(url("backgrounds/freedom-720.webp") type("image/webp") 1x, url("backgrounds/freedom.webp") type("image/webp") 2x);
  }
}

@keyframes wf-soft-enter {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 1024px) {
  .rm-app-grid {
    grid-template-columns: 176px minmax(0, 1fr);
    gap: 28px;
    padding-inline: 24px;
  }

  .rm-value-card {
    min-height: 620px;
  }
}

@media (max-width: 800px) {
  .rm-topbar {
    height: 66px;
    padding-inline: 20px;
  }

  .rm-app-grid {
    display: block;
    padding: 20px 20px 56px;
  }

  .rm-progress {
    gap: 8px;
    margin-bottom: 20px;
    padding: 3px 0 7px;
    scrollbar-width: thin;
  }

  .rm-progress-item {
    flex: 0 0 auto;
    padding: 5px;
  }

  .rm-hero,
  .rm-card {
    padding: 28px 24px;
  }

  .rm-value-card {
    min-height: 0;
    padding: 28px 22px 30px;
  }

  .rm-value-card .rm-mini-progress {
    margin-bottom: 26px;
  }

  .rm-value-card h1 {
    font-size: clamp(27px, 6vw, 30px);
  }

  .rm-value-description,
  .rm-value-scene,
  .rm-value-question {
    font-size: 16px;
  }

  .rm-value-card fieldset {
    margin-top: 36px;
    padding: 19px 14px 15px;
  }

  .rm-value-card .rm-scale {
    gap: 5px;
  }

  .rm-value-card .rm-scale-option {
    min-height: 58px;
    font-size: 15px;
  }
}

@media (max-width: 460px) {
  .rm-brand {
    font-size: 19px;
  }

  .rm-beta {
    padding: 5px 8px;
  }

  .rm-app-grid {
    padding: 14px 20px 44px;
  }

  .rm-progress {
    margin-bottom: 14px;
  }

  .rm-human-root h1 {
    font-size: 30px;
  }

  .rm-value-card h1 {
    font-size: clamp(27px, 7.6vw, 29px);
  }

  .rm-value-card {
    min-height: 0;
    padding: 24px 20px 28px;
  }

  .rm-value-card::after {
    width: 72%;
  }

  .rm-value-card .rm-value-meta {
    font-size: 12px;
  }

  .rm-value-card .rm-mini-progress {
    margin: 9px 0 22px;
  }

  .rm-value-card fieldset {
    margin-inline: -8px;
    margin-top: 32px;
    padding: 17px 10px 13px;
  }

  .rm-value-card fieldset legend {
    margin-bottom: 13px;
    font-size: 13px;
  }

  .rm-value-card .rm-scale {
    gap: 4px;
  }

  .rm-value-card .rm-scale-option {
    min-width: 0;
    min-height: 56px;
    font-size: 15px;
  }

  .rm-value-card .rm-scale-labels {
    font-size: 11px;
  }

  .rm-helper {
    margin-top: 17px;
    font-size: 12px;
  }

  .rm-value-card .rm-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 9px;
    margin-top: 18px;
  }

  .rm-value-card .rm-actions .rm-button {
    width: 100%;
  }
}

@media (max-width: 340px) {
  .rm-app-grid {
    padding-inline: 12px;
  }

  .rm-value-card {
    padding-inline: 16px;
  }

  .rm-value-card .rm-scale {
    gap: 3px;
  }

  .rm-value-card .rm-scale-option {
    min-height: 54px;
    font-size: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rm-value-card,
  .rm-button,
  .rm-scale-option,
  .rm-details-toggle {
    animation: none;
    transition: none;
  }

  .rm-button:hover,
  .rm-scale-option:hover,
  .rm-scale-option.is-selected {
    transform: none;
  }
}

/* Privacy and consent layer */
.rm-app-grid-single {
  grid-template-columns: minmax(0, 820px);
  justify-content: center;
}

.rm-consent-card > p:not(.rm-step) {
  max-width: 720px;
  color: var(--wf-text-muted);
}

.rm-consent-card a,
.rm-dialog a,
.rm-privacy-footer a {
  color: var(--wf-primary);
  text-underline-offset: 3px;
}

.rm-consent-options {
  display: grid;
  gap: 14px;
  margin-top: 28px;
}

.rm-consent-options label {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 13px;
  align-items: flex-start;
  padding: 17px 18px;
  border: 1px solid var(--wf-border);
  border-radius: var(--wf-radius-md);
  background: rgba(255, 253, 252, .9);
  cursor: pointer;
}

.rm-consent-options label:has(input:checked) {
  border-color: var(--wf-green);
  box-shadow: inset 0 0 0 1px var(--wf-green);
  background: #f4f7f2;
}

.rm-consent-options input {
  width: 20px;
  height: 20px;
  margin-top: 2px;
  accent-color: var(--wf-primary);
}

.rm-consent-options strong {
  display: block;
  font-size: 14px;
  line-height: 1.55;
}

.rm-consent-options small {
  display: block;
  margin-top: 5px;
  color: var(--wf-text-muted);
}

.rm-privacy-footer {
  display: flex;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
  padding: 23px 20px 28px;
  border-top: 1px solid var(--wf-border);
  background: rgba(255, 253, 252, .9);
  color: var(--wf-text-muted);
  font-size: 13px;
}

.rm-privacy-footer button,
.rm-intro-footer button {
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}

.rm-intro-footer button {
  color: #24354e;
  font-size: 14px;
}

.rm-dialog {
  width: min(100%, 560px);
  max-height: min(760px, calc(100vh - 40px));
  overflow-y: auto;
}

.rm-dialog-neutral {
  border-color: var(--wf-border);
}

.rm-dialog-info {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  margin: auto;
  border-radius: 50%;
  background: var(--wf-info-bg);
  color: var(--wf-primary);
  font-size: 25px;
  font-weight: 700;
}

.rm-dialog-actions {
  display: grid;
  grid-template-columns: 1fr;
}

.rm-dialog-actions .rm-button {
  width: 100%;
}

.rm-consent-options input:focus-visible,
.rm-privacy-footer button:focus-visible,
.rm-intro-footer button:focus-visible,
.rm-dialog a:focus-visible {
  outline: 3px solid var(--wf-focus);
  outline-offset: 3px;
}

@media (max-width: 640px) {
  .rm-app-grid-single {
    padding-inline: 14px;
  }

  .rm-consent-options label {
    padding: 14px;
  }

  .rm-dialog {
    padding: 24px 18px;
  }

  .rm-privacy-footer {
    align-items: center;
    flex-direction: column;
  }

  .rm-privacy-footer > span {
    display: none;
  }
}

/* Public INTRO homepage */
.rm-human-root.rm-human-intro {
  width: var(--rm-viewport-width, 100vw);
  margin-left: calc(50% - var(--rm-viewport-half-width, 50vw));
}

.rm-stage-intro {
  --wf-intro-navy: #0a2a54;
  --wf-intro-navy-hover: #123b70;
  --wf-intro-cream: #fbf8f3;
  --wf-intro-blue: #e8f1f7;
  --wf-intro-green: #e9efe5;
  --wf-intro-lavender: #eee9f5;
  background:
    radial-gradient(circle at 5% 2%, rgba(214, 162, 76, .08), transparent 24rem),
    var(--wf-intro-cream);
  color: #17243a;
}

.rm-skip-link {
  position: fixed;
  top: 8px;
  left: 12px;
  z-index: 100;
  padding: 10px 14px;
  border-radius: 8px;
  background: var(--wf-intro-navy);
  color: #fff;
  transform: translateY(-160%);
}

.rm-skip-link:focus {
  transform: translateY(0);
}

.rm-intro-header {
  position: sticky;
  top: 0;
  z-index: 30;
  display: flex;
  align-items: center;
  gap: 28px;
  min-height: 76px;
  padding: 0 max(24px, calc((100vw - 1180px) / 2));
  border-bottom: 1px solid rgba(222, 216, 207, .76);
  background: rgba(255, 253, 252, .92);
  backdrop-filter: blur(16px);
}

.rm-intro-header .rm-brand,
.rm-intro-footer .rm-brand {
  flex: none;
  color: var(--wf-intro-navy);
  text-decoration: none;
}

.rm-intro-header .rm-mark,
.rm-intro-footer .rm-mark {
  border-color: #78927f;
}

.rm-intro-header .rm-mark::before,
.rm-intro-footer .rm-mark::before {
  border-color: #78927f;
  border-radius: 70% 0 70% 0;
  transform: rotate(-45deg);
}

.rm-intro-menu-button {
  display: none;
  min-width: 44px;
  min-height: 44px;
  margin-left: auto;
  border: 1px solid #c9c2b9;
  border-radius: 10px;
  background: rgba(255, 253, 252, .94);
  color: var(--wf-intro-navy);
  font-size: 22px;
  cursor: pointer;
}

.rm-intro-mobile-cta {
  display: none;
}

.rm-intro-navigation {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(14px, 2vw, 28px);
  width: 100%;
}

.rm-intro-navigation a,
.rm-intro-footer a {
  color: #24354e;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
}

.rm-intro-navigation a:hover,
.rm-intro-footer a:hover,
.rm-intro-text-link:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}

.rm-intro-nav-cta {
  margin-left: 6px;
}

.rm-intro-main {
  width: 100%;
  outline: 0;
}

.rm-intro-main > .rm-status {
  max-width: 1180px;
  margin: 18px auto;
}

.rm-intro-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, .95fr);
  min-height: 680px;
  border-bottom: 1px solid rgba(222, 216, 207, .74);
  background: #fffdf9;
}

.rm-intro-hero-copy {
  align-self: center;
  width: min(640px, 100%);
  margin-left: max(24px, calc((100vw - 1180px) / 2));
  padding: 64px 54px 66px 0;
}

.rm-stage-intro .rm-eyebrow {
  margin: 0 0 16px;
  color: #6c7f6d;
}

.rm-intro-hero h1 {
  max-width: 650px;
  margin: 0 0 28px;
  color: var(--wf-intro-navy);
  font-size: clamp(44px, 5vw, 66px);
  line-height: 1.05;
  letter-spacing: -.035em;
}

.rm-intro-hero-body {
  max-width: 620px;
  color: #37465a;
  font-size: 16px;
  line-height: 1.65;
}

.rm-intro-hero-body p {
  margin: 0 0 13px;
}

.rm-intro-hero-body p:nth-last-child(2) {
  color: var(--wf-intro-navy);
  font-weight: 700;
}

.rm-intro-actions {
  display: flex;
  align-items: center;
  gap: 22px;
  margin-top: 26px;
  flex-wrap: wrap;
}

.rm-intro-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-width: 138px;
  border-color: var(--wf-intro-navy);
  background: var(--wf-intro-navy);
  color: #fff;
}

.rm-intro-primary:hover {
  border-color: var(--wf-intro-navy-hover);
  background: var(--wf-intro-navy-hover);
  color: #fff;
}

.rm-intro-header .rm-intro-mobile-cta {
  display: none;
}

.rm-intro-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  border: 1px solid #9cabb9;
  background: rgba(255, 253, 252, .9);
  color: var(--wf-intro-navy);
}

.rm-intro-secondary:hover {
  border-color: var(--wf-intro-navy);
  background: #fff;
}

.rm-intro-text-link {
  color: var(--wf-intro-navy);
  font-size: 14px;
  font-weight: 650;
  text-decoration: none;
}

.rm-intro-hero-visual {
  position: relative;
  min-height: 680px;
  overflow: hidden;
  background-color: #dfd2b9;
  background-image:
    linear-gradient(90deg, #fffdf9 0%, rgba(255, 253, 249, .68) 12%, rgba(255, 253, 249, .06) 38%, transparent 64%),
    image-set(url("backgrounds/direction-720.jpg") 1x, url("backgrounds/direction.jpg") 2x);
  background-position: center, 57% 50%;
  background-size: cover;
}

@supports (background-image: image-set(url("backgrounds/direction-720.webp") type("image/webp") 1x)) {
  .rm-intro-hero-visual {
    background-image:
      linear-gradient(90deg, #fffdf9 0%, rgba(255, 253, 249, .68) 12%, rgba(255, 253, 249, .06) 38%, transparent 64%),
      image-set(url("backgrounds/direction-720.webp") type("image/webp") 1x, url("backgrounds/direction.webp") type("image/webp") 2x);
  }
}

.rm-intro-hero-visual::before,
.rm-intro-hero-visual::after,
.rm-intro-hero-visual > span {
  content: "";
  position: absolute;
  border: 2px solid rgba(255, 253, 246, .72);
  border-radius: 50%;
}

.rm-intro-hero-visual::before {
  width: 370px;
  height: 370px;
  top: 12%;
  left: 5%;
}

.rm-intro-hero-visual::after {
  width: 13px;
  height: 13px;
  top: 40%;
  left: 54%;
  background: rgba(255, 253, 246, .86);
  box-shadow: 0 2px 14px rgba(45, 38, 28, .24);
}

.rm-intro-hero-visual > span {
  width: 460px;
  height: 460px;
  top: 5%;
  left: -10%;
  border-color: rgba(255, 253, 246, .28);
}

.rm-intro-section {
  max-width: 1180px;
  margin: 0 auto;
  padding: 92px 24px;
  scroll-margin-top: 88px;
}

.rm-intro-section h2,
.rm-intro-technology h2,
.rm-intro-final h2 {
  margin: 0 0 20px;
  color: var(--wf-intro-navy);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(32px, 3.4vw, 46px);
  font-weight: 600;
  line-height: 1.14;
  letter-spacing: -.025em;
  text-wrap: balance;
}

.rm-intro-section-heading {
  max-width: 830px;
  margin-bottom: 36px;
}

.rm-intro-section-heading > p:last-child,
.rm-intro-context > div:last-child > p,
.rm-intro-places-heading > p:last-child {
  color: #465368;
  font-size: 17px;
  line-height: 1.65;
}

.rm-intro-context {
  display: grid;
  grid-template-columns: 170px minmax(0, 720px);
  justify-content: center;
  gap: clamp(34px, 7vw, 90px);
  align-items: center;
  border-bottom: 1px solid rgba(222, 216, 207, .72);
}

.rm-intro-context-symbol {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: #f1ece4;
  display: grid;
  place-items: center;
}

.rm-intro-context-symbol span {
  position: relative;
  width: 42px;
  height: 42px;
  border: 2px solid var(--wf-intro-navy);
  border-radius: 50%;
}

.rm-intro-context-symbol span::before,
.rm-intro-context-symbol span::after {
  content: "";
  position: absolute;
  border: 2px solid var(--wf-intro-navy);
}

.rm-intro-context-symbol span::before {
  width: 60px;
  height: 42px;
  left: -11px;
  top: 45px;
  border-bottom: 0;
  border-radius: 34px 34px 0 0;
}

.rm-intro-context-symbol span::after {
  width: 16px;
  height: 16px;
  right: -23px;
  bottom: -22px;
  border-radius: 50% 50% 50% 0;
  transform: rotate(-45deg);
  background: #f1ece4;
}

.rm-intro-context .rm-button {
  margin-top: 20px;
}

.rm-intro-horizon-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.rm-intro-horizon-card {
  min-height: 330px;
  padding: 30px;
  border: 1px solid rgba(207, 211, 211, .7);
  border-radius: 18px;
}

.rm-intro-horizon-teraz {
  background: var(--wf-intro-blue);
}

.rm-intro-horizon-praktyka {
  background: var(--wf-intro-green);
}

.rm-intro-horizon-droga {
  background: var(--wf-intro-lavender);
}

.rm-intro-line-icon,
.rm-intro-place-icon {
  display: block;
  width: 44px;
  height: 44px;
  margin-bottom: 22px;
  border: 1px solid currentColor;
  border-radius: 50%;
  color: var(--wf-intro-navy);
  background:
    linear-gradient(90deg, transparent 48%, currentColor 49%, currentColor 51%, transparent 52%),
    linear-gradient(transparent 48%, currentColor 49%, currentColor 51%, transparent 52%);
  opacity: .74;
}

.rm-intro-horizon-card .rm-intro-chip {
  margin: 0 0 12px;
  color: var(--wf-intro-navy);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .08em;
}

.rm-intro-horizon-card h3 {
  margin: 0 0 16px;
  color: var(--wf-intro-navy);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 24px;
  line-height: 1.25;
}

.rm-intro-horizon-card > p:last-child {
  margin: 0;
  color: #35445a;
  line-height: 1.62;
}

.rm-intro-equality-note {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  margin-top: 20px;
  padding: 18px 20px;
  border: 1px solid #e6dfd5;
  border-radius: 12px;
  background: #f7f3ed;
}

.rm-intro-equality-note p {
  margin: 2px 0 0;
  color: #465368;
}

.rm-intro-places {
  max-width: none;
  padding-inline: max(24px, calc((100vw - 1180px) / 2));
  border-top: 1px solid rgba(222, 216, 207, .72);
  border-bottom: 1px solid rgba(222, 216, 207, .72);
  background: #fffdf9;
}

.rm-intro-places-heading {
  max-width: 940px;
}

.rm-intro-location {
  display: grid;
  grid-template-columns: minmax(240px, .7fr) minmax(420px, 1.3fr);
  gap: 28px;
  align-items: center;
  margin: 34px 0;
  padding: 22px;
  border: 1px solid #d6dce0;
  border-radius: 16px;
  background: #f3f6f6;
}

.rm-intro-location h3 {
  margin: 0 0 4px;
  color: var(--wf-intro-navy);
  font-size: 18px;
}

.rm-intro-location p {
  margin: 0;
  color: #526172;
  font-size: 14px;
}

.rm-intro-location-controls {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}

.rm-intro-location-controls label {
  flex: 1;
}

.rm-intro-location-controls input {
  width: 100%;
  min-height: 48px;
  padding: 10px 13px;
  border: 1px solid #aeb8bf;
  border-radius: 11px;
  background: #fff;
  color: #17243a;
}

.rm-intro-places-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
  gap: 28px;
}

.rm-intro-places-layout > * {
  min-width: 0;
}

.rm-intro-place-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.rm-intro-place-card {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 14px;
  min-height: 170px;
  padding: 18px;
  border: 1px solid #ddd7cf;
  border-radius: 14px;
  background: #fff;
}

.rm-intro-place-card .rm-intro-place-icon {
  width: 40px;
  height: 40px;
  margin: 0;
  color: #6c8a77;
  background: #edf2e9;
}

.rm-intro-place-card h3 {
  margin: 6px 0 4px;
  color: var(--wf-intro-navy);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 19px;
  line-height: 1.25;
}

.rm-intro-place-card p:not(.rm-intro-chip),
.rm-intro-place-card small {
  margin: 0;
  color: #5c6878;
  font-size: 13px;
}

.rm-intro-place-card small {
  display: block;
  margin-top: 14px;
}

.rm-intro-chip {
  display: inline-block;
  width: max-content;
  margin: 0;
  padding: 4px 9px;
  border-radius: 999px;
  background: #e7f1f7;
  color: #315675;
  font-size: 10px;
  font-weight: 750;
  letter-spacing: .05em;
}

.rm-intro-chip-praktyka {
  background: #e8efe4;
  color: #47614a;
}

.rm-intro-chip-droga {
  background: #eee9f5;
  color: #5a4b77;
}

.rm-intro-example-note {
  margin: 0 0 12px;
  color: #6b7480;
  font-size: 12px;
  font-weight: 650;
}

.rm-intro-map {
  position: relative;
  min-height: 352px;
  overflow: hidden;
  border: 1px solid #d7d4cc;
  border-radius: 16px;
  background-color: #e9eee9;
  background-image:
    linear-gradient(25deg, transparent 47%, rgba(198, 186, 164, .72) 48%, rgba(198, 186, 164, .72) 50%, transparent 51%),
    linear-gradient(115deg, transparent 47%, rgba(198, 186, 164, .52) 48%, rgba(198, 186, 164, .52) 50%, transparent 51%),
    linear-gradient(rgba(117, 143, 122, .12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(117, 143, 122, .12) 1px, transparent 1px);
  background-size: 130px 110px, 160px 150px, 38px 38px, 38px 38px;
}

.rm-intro-map p {
  position: absolute;
  right: 16px;
  bottom: 12px;
  margin: 0;
  padding: 6px 9px;
  border-radius: 7px;
  background: rgba(255, 255, 255, .82);
  color: #596676;
  font-size: 11px;
}

.rm-intro-map-river {
  position: absolute;
  width: 150%;
  height: 54px;
  left: -25%;
  top: 45%;
  border: 14px solid rgba(139, 185, 204, .52);
  border-block-width: 10px;
  border-radius: 50%;
  transform: rotate(-17deg);
}

.rm-intro-pin {
  position: absolute;
  width: 22px;
  height: 22px;
  border: 4px solid #fff;
  border-radius: 50% 50% 50% 0;
  background: #6d8a78;
  box-shadow: 0 4px 12px rgba(41, 50, 43, .25);
  transform: rotate(-45deg);
}

.rm-intro-pin-one { top: 22%; left: 22%; }
.rm-intro-pin-two { top: 58%; left: 36%; background: #6b94ad; }
.rm-intro-pin-three { top: 28%; right: 18%; background: #8774a3; }
.rm-intro-pin-four { bottom: 18%; right: 30%; background: #d69a31; }

.rm-intro-principle-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
}

.rm-intro-principle-grid article {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 14px;
}

.rm-intro-principle-grid .rm-icon {
  width: 36px;
  height: 36px;
  border: 1px solid #b9c3c0;
  background: transparent;
  color: var(--wf-intro-navy);
}

.rm-intro-principle-grid h3 {
  margin: 1px 0 8px;
  color: var(--wf-intro-navy);
  font-size: 17px;
}

.rm-intro-principle-grid p {
  margin: 0;
  color: #465368;
  line-height: 1.58;
}

.rm-intro-principles > .rm-intro-text-link {
  display: inline-block;
  margin: 32px 0 0 52px;
}

.rm-intro-technology {
  display: flex;
  gap: 18px;
  max-width: 900px;
  margin: 0 auto 92px;
  padding: 26px;
  border: 1px solid #d8dcda;
  border-radius: 16px;
  background: #f1f4f3;
  scroll-margin-top: 100px;
}

.rm-intro-technology .rm-icon {
  flex: none;
}

.rm-intro-technology h2 {
  margin-bottom: 8px;
  font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
  font-size: 20px;
  letter-spacing: 0;
}

.rm-intro-technology p {
  margin: 0;
  color: #526070;
  line-height: 1.62;
}

.rm-intro-final {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 120px;
  gap: 34px;
  align-items: center;
  max-width: 1120px;
  margin: 0 auto 80px;
  padding: 44px 48px;
  overflow: hidden;
  border: 1px solid #e2ddd5;
  border-radius: 20px;
  background: linear-gradient(105deg, #f5f0e9 0%, #fbf9f5 62%, #edf2e9 100%);
}

.rm-intro-final h2 {
  margin-bottom: 8px;
  font-size: 34px;
}

.rm-intro-final p {
  margin: 0;
  color: #465368;
}

.rm-intro-final > div:nth-child(2) {
  display: grid;
  justify-items: stretch;
  gap: 8px;
}

.rm-intro-final small {
  max-width: 220px;
  color: #69737d;
  font-size: 11px;
}

.rm-intro-final-branch {
  position: relative;
  width: 3px;
  height: 100px;
  justify-self: center;
  border-radius: 999px;
  background: #78927f;
  transform: rotate(-8deg);
}

.rm-intro-final-branch::before,
.rm-intro-final-branch::after {
  content: "";
  position: absolute;
  width: 34px;
  height: 18px;
  border-radius: 80% 0 80% 0;
  background: #91a691;
}

.rm-intro-final-branch::before {
  left: -33px;
  top: 25px;
  transform: rotate(20deg);
}

.rm-intro-final-branch::after {
  left: 2px;
  top: 55px;
  transform: rotate(200deg);
}

.rm-intro-footer {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 34px;
  align-items: center;
  min-height: 100px;
  padding: 24px max(24px, calc((100vw - 1180px) / 2));
  border-top: 1px solid #dfd8cf;
  background: #fffdf9;
}

.rm-intro-footer nav {
  display: flex;
  justify-content: center;
  gap: 24px;
}

.rm-intro-footer p {
  margin: 0;
  color: #6a7480;
  font-size: 12px;
}

.rm-intro-menu-button:focus-visible,
.rm-intro-navigation a:focus-visible,
.rm-intro-text-link:focus-visible,
.rm-intro-footer a:focus-visible,
.rm-intro-location-controls input:focus-visible,
.rm-skip-link:focus-visible {
  outline: 3px solid var(--wf-focus);
  outline-offset: 3px;
}

@media (max-width: 960px) {
  .rm-intro-header {
    gap: 10px;
    padding-inline: 22px;
  }

  .rm-intro-menu-button {
    display: inline-grid;
    place-items: center;
    margin-left: 0;
  }

  .rm-intro-header .rm-intro-mobile-cta {
    display: inline-flex;
    min-width: auto;
    min-height: 42px;
    margin-left: auto;
    padding: 8px 14px;
    font-size: 13px;
  }

  .rm-intro-navigation {
    position: absolute;
    top: calc(100% + 1px);
    right: 18px;
    display: none;
    width: min(320px, calc(100vw - 36px));
    padding: 18px;
    border: 1px solid #d7d0c7;
    border-radius: 14px;
    background: #fffdfc;
    box-shadow: 0 18px 50px rgba(39, 46, 51, .16);
  }

  .rm-intro-navigation.is-open {
    display: grid;
    gap: 4px;
  }

  .rm-intro-navigation a {
    padding: 10px 8px;
  }

  .rm-intro-nav-cta {
    width: 100%;
    margin: 10px 0 0;
  }

  .rm-intro-hero {
    grid-template-columns: 1fr;
  }

  .rm-intro-hero-copy {
    width: auto;
    max-width: 760px;
    margin: 0 auto;
    padding: 62px 28px 48px;
  }

  .rm-intro-hero-visual {
    min-height: 430px;
    background-position: center, 52% 54%;
  }

  .rm-intro-horizon-card {
    padding: 24px;
  }

  .rm-intro-horizon-grid,
  .rm-intro-principle-grid {
    grid-template-columns: 1fr;
  }

  .rm-intro-location {
    grid-template-columns: 1fr;
  }

  .rm-intro-location-controls {
    justify-content: flex-start;
  }

  .rm-intro-places-layout {
    grid-template-columns: 1fr;
  }

  .rm-intro-map {
    min-height: 330px;
  }

  .rm-intro-final {
    margin-inline: 24px;
  }

  .rm-intro-footer {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
  }
}

@media (max-width: 700px) {
  .rm-intro-header {
    min-height: 68px;
    gap: 8px;
    padding-inline: 18px;
  }

  .rm-intro-header .rm-brand {
    font-size: 18px;
  }

  .rm-intro-header .rm-mark {
    width: 30px;
    height: 30px;
  }

  .rm-intro-header .rm-intro-mobile-cta {
    min-height: 40px;
    padding-inline: 12px;
  }

  .rm-intro-hero {
    min-height: 0;
  }

  .rm-intro-hero-copy {
    padding: 42px 20px 38px;
  }

  .rm-intro-hero h1 {
    margin-bottom: 22px;
    font-size: clamp(38px, 12vw, 52px);
  }

  .rm-intro-hero-body {
    font-size: 15px;
    line-height: 1.58;
  }

  .rm-intro-actions {
    align-items: stretch;
    gap: 16px;
  }

  .rm-intro-actions .rm-intro-primary {
    width: 100%;
  }

  .rm-intro-hero-visual {
    min-height: 330px;
    background-image:
      linear-gradient(180deg, #fffdf9 0%, rgba(255, 253, 249, .02) 30%, transparent 100%),
      image-set(url("backgrounds/direction-720.jpg") 1x, url("backgrounds/direction.jpg") 2x);
  }

  .rm-intro-hero-visual::before {
    width: 250px;
    height: 250px;
  }

  .rm-intro-hero-visual > span {
    width: 320px;
    height: 320px;
  }

  .rm-intro-section {
    padding: 66px 20px;
  }

  .rm-intro-section h2,
  .rm-intro-technology h2,
  .rm-intro-final h2 {
    font-size: 32px;
  }

  .rm-intro-context {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .rm-intro-context-symbol {
    width: 116px;
    height: 116px;
    margin-left: 2px;
  }

  .rm-intro-context-symbol span {
    transform: scale(.78);
  }

  .rm-intro-horizon-grid,
  .rm-intro-principle-grid {
    grid-template-columns: 1fr;
  }

  .rm-intro-horizon-card {
    min-height: 0;
  }

  .rm-intro-places {
    padding-inline: 20px;
  }

  .rm-intro-location {
    padding: 18px;
  }

  .rm-intro-location-controls {
    display: grid;
    grid-template-columns: 1fr;
  }

  .rm-intro-location-controls > span {
    text-align: center;
  }

  .rm-intro-location-controls .rm-button,
  .rm-intro-location-controls label,
  .rm-intro-location-controls input {
    width: 100%;
  }

  .rm-intro-place-grid {
    display: flex;
    width: calc(100% + 40px);
    max-width: calc(100% + 40px);
    gap: 12px;
    margin-inline: -20px;
    padding: 0 20px 10px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
  }

  .rm-intro-place-card {
    flex: 0 0 min(82vw, 310px);
    scroll-snap-align: start;
  }

  .rm-intro-map {
    min-height: 270px;
  }

  .rm-intro-principles > .rm-intro-text-link {
    margin-left: 0;
  }

  .rm-intro-technology {
    margin: 0 20px 66px;
    padding: 20px;
  }

  .rm-intro-technology h2 {
    font-size: 20px;
  }

  .rm-intro-final {
    grid-template-columns: 1fr;
    gap: 28px;
    margin: 0 20px 60px;
    padding: 32px 24px 94px;
  }

  .rm-intro-final .rm-intro-primary {
    width: 100%;
  }

  .rm-intro-final-branch {
    position: absolute;
    right: 42px;
    bottom: -4px;
  }

  .rm-intro-footer {
    padding: 34px 20px;
  }

  .rm-intro-footer nav {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px 28px;
  }
}

@media (max-width: 360px) {
  .rm-intro-header {
    gap: 8px;
    padding-inline: 10px;
  }

  .rm-intro-header .rm-brand {
    gap: 7px;
    font-size: 15px;
    letter-spacing: .08em;
  }

  .rm-intro-header .rm-mark {
    width: 26px;
    height: 26px;
  }

  .rm-intro-header .rm-intro-mobile-cta {
    min-height: 38px;
    padding-inline: 9px;
    font-size: 12px;
  }

  .rm-intro-menu-button {
    min-width: 40px;
    min-height: 40px;
  }
}

@supports (background-image: image-set(url("backgrounds/direction-720.webp") type("image/webp") 1x)) {
  @media (max-width: 700px) {
    .rm-intro-hero-visual {
      background-image:
        linear-gradient(180deg, #fffdf9 0%, rgba(255, 253, 249, .02) 30%, transparent 100%),
        image-set(url("backgrounds/direction-720.webp") type("image/webp") 1x, url("backgrounds/direction.webp") type("image/webp") 2x);
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  .rm-skip-link,
  .rm-intro-primary,
  .rm-intro-secondary {
    transition: none;
  }
}
