/* Public RACOPAES homepage. Scoped to .hp; intentionally separate from tenant
   workspace and account styling. Use the canonical Ember palette. */
body.landing-shell, body[data-profile-page="/"] { background:#f8f6f3; }
body.landing-shell > .topbar,
body.landing-shell > .sidebar,
body[data-profile-page="/"] > .site-nav { display:none !important; }
body.landing-shell #main,
body[data-profile-page="/"] #main { display:block; margin:0; padding:0; width:100%; max-width:none; min-height:0; background:#f8f6f3; overflow:clip; }
/* Keep keyboard access without covering editorial content at rest. */
body.landing-shell > .skip-link {
  position:absolute;left:12px;top:12px;z-index:50;
  width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;
  border:0;
}
body.landing-shell > .skip-link:focus-visible {
  clip:auto;clip-path:none;width:auto;height:auto;margin:0;
  padding:10px 14px;border:2px solid #b93521;border-radius:8px;
  background:#fff;color:#2b2926;font-weight:700;outline:0;
}
.hp { --hp-accent:var(--ds-accent); --hp-text:var(--ds-text); --hp-muted:var(--ds-muted); --hp-line:var(--ds-border); color:var(--hp-text); font:400 16px/1.55 var(--ds-font-body); background:var(--ds-background); }
.hp * {box-sizing:border-box}
.hp h1,.hp h2,.hp h3,.hp p {margin:0}
.hp a {text-decoration:none;color:inherit}
.hp a:focus-visible {outline:2px solid var(--hp-accent);outline-offset:4px;border-radius:3px}
.hp-wrap {width:min(100% - 64px,1320px);margin-inline:auto}
.hp-header {position:relative;z-index:3;background:rgba(248,246,243,.92);border-bottom:1px solid var(--hp-line)}
.hp-header-inner {min-height:80px;display:flex;align-items:center;gap:36px}
.hp-brand {display:inline-flex;align-items:center;gap:10px;white-space:nowrap;flex:none;letter-spacing:.075em;font-size:16px;font-weight:750}
.hp-logo {width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;flex:none}
.hp-logo img {display:block;width:100%;height:100%;object-fit:contain}
.hp-nav {display:flex;gap:34px;align-items:center;margin-left:auto}
.hp-nav a,.hp-signin {font-size:13px;font-weight:650;color:#625b54;transition:color .16s ease}
.hp-nav a:hover,.hp-signin:hover {color:var(--hp-accent)}
.hp-header-actions {display:flex;align-items:center;gap:20px;margin-left:0}
.hp-btn {display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:54px;border-radius:8px;padding:0 22px;background:var(--hp-accent);color:white!important;font-weight:700;font-size:14px;white-space:nowrap;box-shadow:0 8px 20px rgba(185,53,33,.13);transition:transform .15s,background .15s,box-shadow .15s}
.hp-btn:hover {background:#a53020;transform:translateY(-1px);box-shadow:0 12px 24px rgba(185,53,33,.16)}
.hp-btn-small {min-height:42px;padding-inline:17px;gap:18px;font-size:13px}
.hp-btn span {font-size:18px;line-height:1}
.hp-hero {padding-top:98px;padding-bottom:102px}
.hp-hero-copy {max-width:860px;margin:0 auto 65px;text-align:center}
.hp-eyebrow,.hp-overline {text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:750;color:var(--hp-accent)}
.hp-eyebrow {display:flex;align-items:center;justify-content:center;gap:10px}
.hp-eyebrow-dot {width:7px;height:7px;background:var(--hp-accent);border-radius:50%;display:inline-block}
.hp-hero h1 {margin:22px 0 22px;font-size:clamp(48px,6.4vw,94px);font-weight:750;line-height:1.06;letter-spacing:-.067em;text-wrap:balance}
.hp-hero h1 em {font-style:normal;color:var(--hp-accent)}
.hp-lead {max-width:690px;margin:0 auto!important;color:var(--hp-muted);font-size:clamp(16px,1.4vw,19px);line-height:1.68}
.hp-hero-actions {display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:22px;margin-top:31px}
.hp-secondary {display:inline-flex;align-items:center;gap:18px;font-size:14px;font-weight:700;padding:12px}
.hp-secondary:hover {color:var(--hp-accent)}
.hp-hero-note {color:#857e77;font-size:12px;margin-top:21px!important}
.hp-hero-preview {position:relative;max-width:1190px;margin:auto}
.hp-window {overflow:hidden;background:#fff;border:1px solid #dcd4cc;border-radius:16px;box-shadow:0 26px 64px rgba(59,35,24,.11),0 3px 10px rgba(59,35,24,.045)}
.hp-window-top {height:43px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 17px;border-bottom:1px solid #eae5df;color:#847d76;font-size:11px;font-weight:600}
.hp-window-dots {display:flex;gap:5px}
.hp-window-dots i {width:7px;height:7px;border:1px solid #d5cdc5;background:#eee9e4;border-radius:50%}
.hp-window-mark {font-size:13px;font-weight:800;color:var(--hp-accent)}
.hp-screen {display:block;width:100%;height:auto;min-height:0;object-fit:contain;object-position:top left;aspect-ratio:auto;background:#f2eeea url("/brand/logo.svg") center/72px no-repeat}
.hp-dashboard {max-height:670px;object-fit:cover;object-position:top left;aspect-ratio:16/10}
.hp-preview-caption {display:block;text-align:center;font-size:10px;letter-spacing:.19em;color:#827972;font-weight:700;margin-top:25px}
/* Homepage chapter system: editorial rhythm, not repeated screenshot cards. */
.hp { overflow:clip; }
.hp-kicker {display:flex;align-items:center;gap:12px;color:#a63b2b;font-size:11px;font-weight:750;letter-spacing:.15em;text-transform:uppercase;line-height:1.5}
.hp-kicker-line {display:inline-block;flex:none;width:26px;height:1px;background:currentColor}
.hp-feature-count {font-size:11px;font-weight:750;letter-spacing:.13em;text-transform:uppercase;color:#a73e2b}
.hp-feature-count span {margin:0 7px;color:#aea39a}
.hp-bridge {padding:112px 0 116px;background:#fff;border-top:1px solid var(--hp-line)}
.hp-bridge-lead {display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.72fr);gap:70px;align-items:end}
.hp-bridge h2,.hp-spotlight h2,.hp-story h2,.hp-flexible h2,.hp-start h2,.hp-final h2  {font-size:clamp(42px,5.1vw,78px);font-weight:730;letter-spacing:-.064em;line-height:1.08;text-wrap:balance}
.hp-bridge h2 {margin-top:25px}
.hp-bridge h2 span,.hp-story h2 span {color:var(--hp-accent)}
.hp-bridge-aside {padding-bottom:8px}
.hp-bridge-aside p {font-size:clamp(16px,1.32vw,19px);line-height:1.72;color:#625b54;max-width:460px}
.hp-bridge-signature {display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--hp-line);margin-top:29px;padding-top:14px;font-size:12px;font-weight:700;letter-spacing:.02em}
.hp-bridge-signature span {font-size:19px;color:var(--hp-accent)}
.hp-flow {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:relative;margin-top:92px;padding-top:12px}
.hp-flow:before {content:"";position:absolute;top:20px;left:3px;right:3px;height:1px;background:#d9cec6}
.hp-flow-item {display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:0;padding-right:20px;position:relative}
.hp-flow-number {font-size:11px;color:#999088;letter-spacing:.08em;margin-bottom:15px;position:absolute;top:-18px;left:0}
.hp-flow-node {display:block;width:17px;height:17px;border:4px solid #fff;outline:1px solid #c5aaa3;border-radius:50%;background:var(--hp-accent);position:relative;z-index:1;margin-bottom:19px}
.hp-flow-item strong {font-size:clamp(17px,2vw,22px);letter-spacing:-.04em;line-height:1.15}
.hp-flow-item small {font-size:12px;margin-top:8px;color:#7f746b;line-height:1.4}
.hp-spotlight {padding:112px 0 120px;background:#262321;color:#f8f4f0;overflow:hidden}
.hp-kicker-inverse {color:#e9ad9e}
.hp-spotlight-heading {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.44fr);gap:70px;align-items:end;margin-bottom:66px}
.hp-spotlight h2 {margin-top:22px;font-size:clamp(54px,6.2vw,92px);line-height:1.02}
.hp-spotlight h2 em,.hp-flexible h2 em,.hp-start h2 em,.hp-final h2 em {font-style:normal;color:#d7a79b}
.hp-spotlight-heading>p {color:#c7bcb5;max-width:360px;font-size:17px;line-height:1.76;padding-bottom:11px}
.hp-spotlight-body {display:grid;grid-template-columns:minmax(260px,.35fr) minmax(0,1fr);align-items:center;gap:32px}
.hp-spotlight-narrative {padding:16px 0 5px;display:flex;flex-direction:column;min-width:0}
.hp-spotlight-narrative>.hp-feature-count {color:#ecb8a9}
.hp-spotlight-narrative h3 {font-size:clamp(31px,2.9vw,43px);line-height:1.15;letter-spacing:-.052em;margin:21px 0 16px}
.hp-spotlight-narrative>p {color:#bfb4ac;font-size:15px;line-height:1.76;max-width:350px}
.hp-narrative-lines {margin-top:auto;padding-top:39px}
.hp-narrative-lines>div {display:grid;grid-template-columns:25px minmax(0,1fr);column-gap:10px;align-items:baseline;padding:16px 0;border-top:1px solid #49423d}
.hp-tiny-mark {grid-row:1/3;color:#da9c8d}
.hp-narrative-lines strong {font-size:14px;font-weight:700;letter-spacing:-.01em}
.hp-narrative-lines small {grid-column:2;color:#aea29a;font-size:12px;line-height:1.6;margin-top:3px}
.hp-spotlight-media,.hp-story-visual {min-width:0;margin:0}
.hp-spotlight-media>.hp-image-link>picture>.hp-showcase-pos {display:block;width:calc(100% + 4vw);max-width:none;height:auto;aspect-ratio:auto;border-radius:10px 0 0 10px;box-shadow:0 35px 75px rgba(0,0,0,.28);background:#fff;border:1px solid #6d625d}
.hp-spotlight-media {overflow:visible;isolation:isolate}
.hp-spotlight-media figcaption {font-size:11px;letter-spacing:.05em;color:#a99b91;text-align:right;margin-top:15px}
.hp-story {padding-top:140px;padding-bottom:145px}
.hp-story-heading {max-width:850px}
.hp-story-heading h2 {margin:26px 0 22px;font-size:clamp(46px,5.4vw,84px)}
.hp-story-heading>p:last-child {font-size:17px;color:#625b54;line-height:1.75;max-width:710px}
.hp-story-layout {display:grid;grid-template-columns:minmax(0,1.56fr) minmax(0,.64fr);gap:70px;margin-top:58px;align-items:center}
.hp-story-visual>.hp-image-link>picture>.hp-showcase-reports {display:block;width:100%;height:auto;aspect-ratio:auto;border-radius:10px;box-shadow:0 28px 72px rgba(45,24,12,.13);border:1px solid #dcd2c8;background:white}
.hp-story-visual figcaption {font-size:11px;color:#91857c;letter-spacing:.05em;margin-top:14px}
.hp-story-aside {align-self:stretch;display:flex;flex-direction:column;align-items:flex-start;padding:28px 0 5px}
.hp-story-aside h3 {font-size:clamp(25px,2.5vw,37px);line-height:1.18;letter-spacing:-.046em;font-weight:730;margin-bottom:18px}
.hp-story-aside-main {margin:auto 0}
.hp-story-aside p {font-size:15px;line-height:1.79;color:#6f665f}
.hp-story-aside-foot {display:flex;align-items:center;gap:19px;border-top:1px solid #dcd2c9;padding-top:20px;margin-top:35px;width:100%;font-size:12px;color:#8b3a2d;font-weight:700;line-height:1.4}
.hp-pulse-symbol {display:flex;align-items:center;justify-content:center;width:45px;height:45px;border:1px solid #dec7bf;border-radius:50%;font-size:21px}
.hp-flexible {background:#fff;padding:127px 0 135px}
.hp-flexible-grid {display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(50px,8vw,150px);align-items:start}
.hp-flexible h2 {font-size:clamp(45px,5.1vw,77px);margin:26px 0 24px}
.hp-flexible h2 em {color:var(--hp-accent)}
.hp-flexible-intro>p:last-child {color:#6b625a;line-height:1.78;font-size:17px;max-width:525px}
.hp-settings-showcase {margin-top:95px;margin-bottom:0;max-width:1320px}
.hp-settings-showcase figcaption {display:flex;align-items:flex-end;flex-wrap:wrap;column-gap:28px;row-gap:9px;margin-bottom:26px}
.hp-settings-showcase figcaption>span {flex-basis:100%;font-size:11px;font-weight:760;color:#b93521;letter-spacing:.14em}
.hp-settings-showcase figcaption>strong {font-size:clamp(22px,2.5vw,35px);line-height:1.22;letter-spacing:-.046em;font-weight:730}
.hp-settings-showcase figcaption>small {font-size:14px;line-height:1.6;color:#746b63;margin-bottom:3px}
.hp-settings-showcase>.hp-image-link>picture>.hp-showcase-settings {display:block;width:100%;height:auto;aspect-ratio:auto;border:1px solid #ddd2c8;border-radius:11px;box-shadow:0 32px 75px rgba(57,35,20,.13);background-color:#fff}
@media (max-width:700px) {
 .hp-settings-showcase {margin-top:58px}
 .hp-settings-showcase figcaption {gap:9px;margin-bottom:21px}
 .hp-settings-showcase figcaption>strong {font-size:25px}
 .hp-settings-showcase>.hp-image-link>picture>.hp-showcase-settings {border-radius:8px}
}
.hp-sectors {border-top:1px solid #d8ccc1}
.hp-sectors>div {border-bottom:1px solid #d8ccc1;display:grid;grid-template-columns:36px minmax(0,1fr) 26px;align-items:center;gap:13px;padding:23px 4px}
.hp-sectors>div>span:first-child {font-size:11px;color:#b93521;font-weight:700;letter-spacing:.1em}
.hp-sectors strong {font-size:clamp(17px,1.7vw,24px);letter-spacing:-.036em;font-weight:675}
.hp-sectors>div>span:last-child {font-size:19px;color:#b5a9a0;text-align:right}
.hp-start {padding:109px 0 127px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(55px,9vw,160px);border-top:1px solid #e6ddd6}
.hp-start h2 {font-size:clamp(47px,5vw,75px);margin:27px 0 23px}
.hp-start h2 em {color:var(--hp-accent)}
.hp-start-heading>p:last-child {color:#6b625a;font-size:16px;line-height:1.73;max-width:420px}
.hp-start-steps {list-style:none;padding:0;margin:0;border-top:1px solid #ded3c8}
.hp-start-steps li {display:grid;grid-template-columns:34px minmax(0,1fr) 24px;align-items:start;gap:14px;padding:29px 0;border-bottom:1px solid #ded3c8}
.hp-step-num {color:#b93521;font-size:12px;font-weight:760;letter-spacing:.04em;padding-top:5px}
.hp-start-steps h3 {font-size:clamp(18px,1.72vw,23px);letter-spacing:-.04em;font-weight:720;line-height:1.3}
.hp-start-steps p {color:#746a62;font-size:14px;line-height:1.65;margin-top:8px;max-width:420px}
.hp-step-arrow {font-size:19px;color:#b8a9a0}
.hp-final {position:relative;background:#b93521;color:#fff;overflow:hidden}
.hp-final-inner {position:relative;min-height:420px;display:flex;align-items:center;padding:77px 0 85px;isolation:isolate}
.hp-final-copy {position:relative;z-index:1;max-width:900px}
.hp-final-kicker {letter-spacing:.17em;font-size:11px;font-weight:760;color:#ffddd4}
.hp-final h2 {font-size:clamp(51px,6.4vw,96px);line-height:1.03;margin:20px 0 17px}
.hp-final h2 em {color:#f6d3c8}
.hp-final-copy>p:nth-of-type(2) {font-size:18px;color:#ffe6de;line-height:1.55}
.hp-final-button {display:inline-flex;align-items:center;justify-content:space-between;gap:45px;min-height:52px;border-radius:8px;background:white;color:#92291d!important;padding:0 21px;font-size:14px;font-weight:750;margin-top:31px;transition:background .15s,transform .15s}
.hp-final-button:hover {background:#fcefe9;transform:translateY(-1px)}
.hp-final-button span {font-size:20px}
.hp-final-watermark {position:absolute;right:-4%;top:50%;transform:translateY(-50%);width:min(45vw,550px);height:auto;opacity:.07;filter:brightness(0) invert(1);z-index:0;pointer-events:none}
.hp-footer {background:#fff;padding:62px 0 24px}
.hp-footer-top {display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.7fr) minmax(0,.7fr);gap:42px;padding-bottom:60px}
.hp-footer .hp-logo {width:34px;height:34px}
.hp-footer-top>div:first-child>p {color:#837970;font-size:13px;line-height:1.7;max-width:260px;margin-top:20px}
.hp-footer-top nav {display:flex;flex-direction:column;gap:13px;align-items:flex-start}
.hp-footer-top nav a {font-size:14px;color:#5c534c}
.hp-footer-top nav a:hover,.hp-footer-account a:hover {color:#b93521}
.hp-footer-account>p {color:#a73d2c;letter-spacing:.15em;font-size:11px;font-weight:760;margin-bottom:15px}
.hp-footer-account a {font-size:16px;font-weight:740;letter-spacing:-.02em;display:inline-flex;gap:30px}
.hp-footer-bottom {display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid #e6ddd5;padding-top:20px;font-size:12px;color:#887e75}
.hp-mobile-menu {display:none;position:relative}
.hp-mobile-menu summary {display:flex;width:43px;height:43px;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;border:1px solid #e1d7cf;border-radius:9px;background:#fff;list-style:none}
.hp-mobile-menu summary::-webkit-details-marker {display:none}
.hp-mobile-menu summary span {width:17px;height:1.5px;background:#3d352f;border-radius:10px}
.hp-mobile-menu[open] summary {border-color:#b93521}
.hp-mobile-menu nav {position:absolute;top:calc(100% + 12px);right:0;z-index:12;display:flex;flex-direction:column;min-width:230px;padding:10px;border:1px solid #e0d3c7;border-radius:11px;background:#fff;box-shadow:0 15px 40px rgba(40,26,17,.14)}
.hp-mobile-menu nav a {padding:11px 12px;font-size:14px;color:#3b3430;font-weight:650;border-radius:6px}
.hp-mobile-menu nav a:hover {background:#f8f3ef;color:#b93521}
.hp-mobile-menu summary:focus-visible {outline:2px solid var(--hp-accent);outline-offset:3px}
@media (max-width:1100px) {
 .hp-nav {gap:20px}
 .hp-header-inner {gap:16px}
 .hp-header-actions {gap:12px;margin-left:auto}
 .hp-spotlight-body {grid-template-columns:minmax(230px,.55fr) minmax(0,1fr);gap:30px}
 .hp-story-layout {gap:40px}
}
@media (max-width:900px) {
 .hp-nav {display:none}
 .hp-mobile-menu {display:block;order:3}
 .hp-header-actions {margin-left:auto;order:2}
 .hp-header .hp-signin {display:inline-flex}
 .hp-bridge-lead {grid-template-columns:minmax(0,1fr) minmax(0,.7fr);gap:35px}
 .hp-spotlight-heading {gap:35px}
 .hp-spotlight-body {grid-template-columns:minmax(0,1fr);gap:32px}
 .hp-spotlight-narrative {display:grid;grid-template-columns:1fr 1.2fr;gap:0 45px;padding:0}
 .hp-spotlight-narrative>.hp-feature-count {grid-column:1/-1}
 .hp-spotlight-narrative h3 {grid-column:1;grid-row:2}
 .hp-spotlight-narrative>p {grid-column:1;grid-row:3}
 .hp-narrative-lines {grid-column:2;grid-row:2/4;padding:0}
 .hp-story-layout {grid-template-columns:minmax(0,1.5fr) minmax(0,.72fr);gap:30px}
 .hp-flexible-grid,.hp-start {gap:44px}
}
@media (max-width:700px) {
 .hp-wrap {width:min(100% - 38px,1320px)}
 .hp-header-inner {min-height:67px}
 .hp-brand {font-size:14px}
 .hp-logo {width:32px;height:32px}
 .hp-header .hp-signin {display:none}
 .hp-btn-small {min-height:42px;padding:0 12px;gap:12px;font-size:12px}
 .hp-hero {padding:75px 0 76px}
 .hp-hero h1 {font-size:clamp(42px,9vw,64px)}
 .hp-hero-copy {margin-bottom:48px}
 .hp-lead {font-size:16px}
 .hp-window {border-radius:10px}
 .hp-window-top {height:32px;font-size:9px}
 .hp-bridge {padding:77px 0 82px}
 .hp-bridge-lead,.hp-spotlight-heading,.hp-story-layout,.hp-flexible-grid,.hp-start  {display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
 .hp-bridge h2,.hp-story h2,.hp-flexible h2,.hp-start h2  {font-size:clamp(38px,8vw,55px)}
 .hp-bridge-aside p,.hp-story-heading>p:last-child,.hp-flexible-intro>p:last-child  {font-size:15px}
 .hp-flow {grid-template-columns:minmax(0,1fr);margin:48px 0 0 7px;padding:0 0 0 2px;gap:0}
 .hp-flow:before {top:0;bottom:24px;left:8px;right:auto;width:1px;height:auto}
 .hp-flow-item {display:grid;grid-template-columns:29px minmax(0,1fr);grid-template-rows:auto auto;align-items:start;padding:0 0 27px;gap:4px 15px}
 .hp-flow-number {position:static;grid-column:2;grid-row:1;color:#9b7065;margin:0 0 2px}
 .hp-flow-node {grid-column:1;grid-row:1/4;margin:2px 0 0;transform:translateX(-2px)}
 .hp-flow-item strong {grid-column:2;grid-row:2;font-size:20px}
 .hp-flow-item small {grid-column:2;grid-row:3;font-size:13px;margin:0}
 .hp-spotlight {padding:77px 0 82px}
 .hp-spotlight-heading {gap:20px;margin-bottom:30px}
 .hp-spotlight h2 {font-size:clamp(52px,9.3vw,68px)}
 .hp-spotlight-heading>p {font-size:15px;line-height:1.72}
 .hp-spotlight-narrative {display:block}
 .hp-spotlight-narrative h3 {margin:15px 0 10px;font-size:31px}
 .hp-narrative-lines {margin-top:20px;padding:0}
 .hp-spotlight-media figcaption {font-size:10px}
 .hp-story {padding-top:87px;padding-bottom:91px}
 .hp-story-heading h2 {margin:22px 0 18px}
 .hp-story-layout {margin-top:33px}
 .hp-story-aside {padding:7px 0 0}
 .hp-story-aside h3 {font-size:27px;margin:12px 0}
 .hp-story-aside-main {margin:0}
 .hp-story-aside-foot {margin-top:21px}
 .hp-flexible {padding:88px 0}
 .hp-flexible h2 {margin:21px 0}
 .hp-sectors {margin-top:22px}
 .hp-sectors>div {padding:18px 0}
 .hp-start {padding-top:82px;padding-bottom:89px;gap:34px}
 .hp-start h2 {margin:20px 0}
 .hp-start-steps li {padding:22px 0}
 .hp-final-inner {min-height:380px;padding:69px 0}
 .hp-final h2 {font-size:clamp(46px,9vw,67px)}
 .hp-final-watermark {width:340px;right:-150px}
 .hp-footer {padding:52px 0 24px}
 .hp-footer-top {grid-template-columns:1fr 1fr;gap:34px 22px;padding-bottom:38px}
 .hp-footer-top>div:first-child {grid-column:1/-1}
 .hp-footer-top>div:first-child>p {margin-top:13px}
}
@media (max-width:430px) {
 .hp-wrap {width:calc(100% - 32px)}
 .hp-header .hp-btn-small {display:inline-flex}
 .hp-header-actions {display:flex;margin-left:auto}
 .hp-hero {padding-top:64px}
 .hp-hero h1 {font-size:clamp(39px,10vw,49px)}
 .hp-hero-actions {gap:10px}
 .hp-hero-actions>.hp-btn {min-height:49px}
 .hp-secondary {padding:9px}
 .hp-kicker {font-size:10px;letter-spacing:.11em}
 .hp-bridge h2,.hp-story h2,.hp-flexible h2,.hp-start h2  {font-size:clamp(36px,9.5vw,44px)}
 .hp-spotlight h2 {font-size:clamp(47px,11vw,58px)}
 .hp-sectors strong {font-size:17px}
 .hp-final h2 {font-size:clamp(43px,11vw,56px)}
 .hp-footer-top {grid-template-columns:1fr;gap:30px}
 .hp-footer-top>div:first-child {grid-column:auto}
 .hp-footer-bottom {display:block}
 .hp-footer-bottom span {display:block;margin:5px 0}
}
@media (max-width:350px) {
 .hp-hero h1 {font-size:38px}
 .hp-hero-actions {flex-direction:column}
 .hp-hero-actions>.hp-btn {width:100%}
 .hp-spotlight h2 {font-size:45px}
}
@media (prefers-reduced-motion: reduce) {.hp * {transition:none!important;animation:none!important;scroll-behavior:auto!important}}


/* Public site refinement — accessible responsive navigation and motion. */
:root { scroll-behavior: smooth; }
.hp { --hp-background:#f8f6f3; --hp-cream:#f1ebe5; --hp-ease:cubic-bezier(.22,1,.36,1); overflow:clip; }
.hp [id] { scroll-margin-top: 108px; }
.hp-header { position:sticky; top:0; z-index:40; backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); background:rgba(248,246,243,.92); }
.hp-nav a { position:relative; }
.hp-nav a:after { content:""; position:absolute; height:2px; background:var(--hp-accent); left:0; right:100%; bottom:-10px; transition:right .24s var(--hp-ease); }
.hp-nav a:hover:after,.hp-nav a[aria-current="page"]:after { right:0; }
.hp-hero { padding-top:clamp(62px,7vw,94px); }
.hp-hero h1 { font-size:clamp(48px,5.9vw,84px); letter-spacing:-.058em; }
.hp-hero-preview { isolation:isolate; }
.hp-hero-vector { position:absolute; right:-68px; top:-74px; width:174px; height:174px; color:var(--hp-accent); pointer-events:none; z-index:-1; animation:hp-orbit 22s linear infinite; transform-origin:center; }
.hp-hero-vector svg { display:block; width:100%; height:100%; }
.hp-hero .hp-window { transition:transform .7s var(--hp-ease),box-shadow .5s ease; }
.hp-hero .hp-window:hover { transform:translateY(-3px); box-shadow:0 35px 90px rgba(59,35,24,.17); }
@keyframes hp-orbit { to { transform:rotate(360deg); } }

.hp-footer-label { color:#a53c2b; font-size:11px; letter-spacing:.13em; font-weight:760; margin-bottom:2px; }
.hp-footer-account nav { display:flex; flex-direction:column; align-items:flex-start; gap:13px; }
.hp-footer-account nav a { color:#5c534c; font-size:14px; letter-spacing:normal; font-weight:450; }
.hp-footer-account nav a:hover { color:var(--hp-accent); }
.hp-back-top { color:#9f3d2d!important; font-weight:700; }

/* Progressive intersection reveals; content remains readable without JS. */
.hp-motion-enabled .hp-reveal { opacity:0; transform:translateY(20px); transition:opacity .68s var(--hp-ease),transform .76s var(--hp-ease); }
.hp-motion-enabled .hp-reveal.hp-visible { opacity:1; transform:none; }
.hp-motion-enabled .hp-reveal:nth-child(2n) { transition-delay:45ms; }

/* Standalone public pages, using the same site chrome and visual system. */
.hp-page { background:#f8f6f3; min-height:calc(100vh - 80px); }
.hp-page-lead { position:relative; padding:105px 0 72px; border-bottom:1px solid var(--hp-line); overflow:hidden; }
.hp-page-lead>.hp-wrap { position:relative; z-index:1; }
.hp-page-lead:after { content:""; position:absolute; width:470px; height:470px; right:-180px; top:-225px; border-radius:50%; border:1px solid rgba(185,53,33,.16); box-shadow:0 0 0 45px rgba(185,53,33,.025),0 0 0 120px rgba(185,53,33,.018); pointer-events:none; }
.hp-breadcrumb { display:flex; align-items:center; gap:10px; font-size:12px; font-weight:660; color:#887c72; margin-bottom:27px; }
.hp-breadcrumb a:hover { color:var(--hp-accent); }
.hp-breadcrumb span { color:var(--hp-accent); }
.hp-page-lead h1 { font-size:clamp(44px,6vw,84px); font-weight:750; line-height:1.17; letter-spacing:-.052em; max-width:1050px; text-wrap:balance; overflow-wrap:break-word; }
.hp-page-lead h1 em { color:var(--hp-accent); font-style:normal; }
.hp-page-lead .hp-kicker { margin-bottom:clamp(18px,2.1vw,27px); }
.hp-page-lead .hp-page-summary { display:block; max-width:680px; margin-top:clamp(27px,3vw,40px); color:#71665e; font-size:clamp(16px,1.45vw,19px); line-height:1.78; text-wrap:pretty; }
.hp-page-lead .hp-page-date { margin-top:clamp(17px,2vw,25px)!important; font-size:13px!important; line-height:1.65; color:#8f8378!important; }
.hp-page-main { padding:75px 0 110px; }
.hp-page-section { padding:56px 0; border-bottom:1px solid #e3d8cd; scroll-margin-top:105px; }
.hp-page-section:first-child { padding-top:0; }
.hp-page-section:last-child { border-bottom:none; }
.hp-page-section h2 { font-weight:720; font-size:clamp(30px,3.65vw,50px); letter-spacing:-.052em; line-height:1.16; max-width:800px; }
.hp-page-section p { font-size:16px; color:#6c6158; line-height:1.8; margin-top:18px; max-width:720px; }
.hp-page-figure { position:relative; display:block; width:100%; height:auto; background:#fff; border-radius:12px; border:1px solid #e1d6cb; box-shadow:0 20px 65px rgba(55,32,15,.11); }
.hp-page-section-grid { display:grid; grid-template-columns:minmax(0,.69fr) minmax(0,1.31fr); align-items:center; gap:clamp(35px,6vw,95px); }
.hp-page-section-grid.reverse { grid-template-columns:minmax(0,1.31fr) minmax(0,.69fr); }
.hp-page-section-grid.reverse figure { order:-1; }
.hp-page-section-grid figure { margin:0; min-width:0; }
.hp-page-section-grid figcaption { color:#8b8178; font-size:11px; padding-top:12px; }
.hp-page-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:40px; }
.hp-page-card { background:#fff; padding:30px; min-width:0; border:1px solid #e6dcd2; border-radius:12px; transition:transform .25s var(--hp-ease),box-shadow .25s ease; }
.hp-page-card:hover { transform:translateY(-4px); box-shadow:0 14px 38px rgba(50,32,15,.08); }
.hp-page-card-number { font-size:11px; font-weight:750; letter-spacing:.14em; color:var(--hp-accent); }
.hp-page-card h3 { margin:45px 0 11px; font-size:clamp(20px,2vw,27px); line-height:1.15; letter-spacing:-.04em; font-weight:710; }
.hp-page-card p { font-size:14px; color:#776b61; line-height:1.7; margin:0; }
.hp-page-action { padding:62px clamp(26px,5vw,70px); border-radius:15px; background:#b93521; color:#fff; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.hp-page-action h2 { font-size:clamp(28px,3vw,43px); font-weight:720; letter-spacing:-.05em; max-width:570px; line-height:1.15; }
.hp-page-action p { font-size:15px; color:#ffe3da; margin-top:12px; }
.hp-page-action a { flex:none; background:#fff; border-radius:8px; min-height:49px; display:inline-flex; align-items:center; justify-content:center; padding:0 20px; color:#913020; font-size:14px; font-weight:740; }
.hp-legal-layout { display:grid; grid-template-columns:230px minmax(0,780px); align-items:start; gap:clamp(45px,6vw,96px); }
.hp-legal-toc { position:sticky; top:116px; display:flex; flex-direction:column; gap:13px; border-left:1px solid #e3d7cd; padding-left:20px; }
.hp-legal-toc strong { font-size:11px; color:var(--hp-accent); letter-spacing:.13em; margin-bottom:4px; }
.hp-legal-toc a { font-size:13px; color:#786b62; }
.hp-legal-toc a:hover { color:var(--hp-accent); }
.hp-legal-content section { padding:0 0 31px; margin-bottom:32px; border-bottom:1px solid #e3d9cf; scroll-margin-top:115px; }
.hp-legal-content section:last-child { border:0; }
.hp-legal-content h2 { font-size:clamp(21px,2.5vw,30px); font-weight:720; letter-spacing:-.04em; margin-bottom:13px; line-height:1.23; }
.hp-legal-content p,.hp-legal-content li { font-size:15px; line-height:1.84; color:#625950; margin:10px 0; }
.hp-legal-content ul { padding-left:22px; }
.hp-legal-content a { color:var(--hp-accent); text-decoration:underline; text-underline-offset:3px; }
.hp-page-date { font-size:13px!important; color:#8f8378!important; margin-top:17px!important; }
.hp-contact-address { display:inline-flex; gap:10px; align-items:center; margin-top:22px; font-weight:700; font-size:18px; color:var(--hp-accent)!important; overflow-wrap:anywhere; }
@media (max-width:1020px) {
  .hp-page-section-grid,.hp-page-section-grid.reverse { gap:35px; }
}
@media (max-width:760px) {
  .hp-hero-vector { right:-28px; top:-47px; width:100px; height:100px; opacity:.6; }
  .hp-page-lead { padding:69px 0 50px; }
  .hp-page-lead h1 { font-size:clamp(40px,9vw,58px); line-height:1.2; letter-spacing:-.045em; }
  .hp-page-lead .hp-page-summary { margin-top:29px; line-height:1.82; font-size:16px; }
  .hp-page-lead .hp-kicker { margin-bottom:22px; }
  .hp-page-main { padding:42px 0 75px; }
  .hp-page-section-grid,.hp-page-section-grid.reverse { display:flex; flex-direction:column; align-items:stretch; gap:23px; }
  .hp-page-section-grid.reverse figure { order:initial; }
  .hp-page-section { padding:42px 0; }
  .hp-page-cards { grid-template-columns:1fr; gap:12px; }
  .hp-page-card { padding:25px; }
  .hp-page-card h3 { margin-top:22px; }
  .hp-page-action { flex-direction:column; align-items:flex-start; padding:38px 26px; }
  .hp-legal-layout { grid-template-columns:1fr; gap:36px; }
  .hp-legal-toc { position:static; display:flex; flex-flow:row wrap; gap:10px 20px; padding:0; border:0; }
  .hp-legal-toc strong { width:100%; }
}
@media (prefers-reduced-motion: reduce) {
  :root { scroll-behavior:auto; }
  .hp-hero-vector { animation:none!important; }
  .hp-motion-enabled .hp-reveal { opacity:1!important; transform:none!important; transition:none!important; }
}


/* Layout-safe homepage typography, after original responsive overrides. */
.hp .hp-hero-copy { max-width:950px; margin-inline:auto; }
.hp .hp-hero h1 {
  display:flex; flex-direction:column; align-items:center;
  gap:clamp(7px,1vw,12px);
  max-width:100%; margin:clamp(21px,3vw,30px) auto 0; padding:0 0 .08em;
  font-size:clamp(42px,5.7vw,82px); line-height:1.17;
  letter-spacing:-.052em; font-weight:750; overflow:visible; text-wrap:balance;
}
.hp .hp-hero-line {
  display:block; width:100%; max-width:100%;
  line-height:inherit; text-wrap:balance;
}
.hp .hp-hero-highlight { color:var(--hp-accent); }
.hp .hp-lead {
  max-width:680px; margin:clamp(25px,3.2vw,39px) auto 0!important;
  line-height:1.77; letter-spacing:normal; text-wrap:pretty;
}
.hp .hp-hero-actions { margin-top:clamp(27px,3vw,40px); }
.hp .hp-hero-note { margin-top:19px!important; line-height:1.65; }
.hp .hp-eyebrow { max-width:100%; flex-wrap:wrap; text-align:center; line-height:1.7; }


@media (max-width:700px) {
  .hp .hp-hero h1 { font-size:clamp(37px,8.5vw,53px); line-height:1.22; letter-spacing:-.047em; gap:9px; padding-bottom:.08em; }
  .hp .hp-hero-copy { margin-bottom:42px; }
  .hp .hp-lead { max-width:560px; font-size:15px; margin-top:26px!important; line-height:1.78; }
  .hp .hp-hero-actions { gap:12px; }
}
@media (max-width:430px) {
  .hp .hp-hero h1 { font-size:clamp(35px,9.2vw,40px); line-height:1.23; letter-spacing:-.044em; }
  .hp .hp-hero-line { text-wrap:balance; }
  .hp .hp-lead { margin-top:28px!important; font-size:14.5px; line-height:1.8; }
  .hp-hero { padding-top:55px; }
}


/* Featured product hero. Balanced first-screen composition, brand logo, real screenshot. */
.hp .hp-hero {
  position:relative; isolation:isolate; padding:clamp(46px,5.3vw,84px) 0 0;
  background:radial-gradient(ellipse 43% 85% at 93% 18%,rgba(185,53,33,.085),transparent 80%),
             radial-gradient(ellipse 52% 52% at 5% 86%,rgba(220,191,166,.15),transparent 80%),#f8f6f3;
  border-bottom:1px solid #e6dcd3; overflow:hidden;
}
.hp .hp-hero::before {
  content:""; position:absolute; z-index:-1; inset:0 0 auto auto;
  width:min(62vw,940px); height:min(55vw,720px);
  background-image:linear-gradient(rgba(185,53,33,.055) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(185,53,33,.055) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:radial-gradient(ellipse at 75% 45%,#000 0,transparent 75%);
  pointer-events:none;
}
.hp .hp-hero-grid {
  display:grid; grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr);
  align-items:center; gap:clamp(26px,4.7vw,76px);
  max-width:1440px;
}
.hp .hp-hero-copy {
  text-align:left; margin:0; width:100%; min-width:0; max-width:600px;
  padding:12px 0 24px; position:relative; z-index:2;
}
.hp .hp-hero .hp-eyebrow { justify-content:flex-start; text-align:left; gap:10px; }
.hp .hp-hero .hp-eyebrow-dot {
  width:8px; height:8px; flex:none; background:var(--hp-accent);
  box-shadow:0 0 0 5px rgba(185,53,33,.095);
}
.hp .hp-hero h1 {
  display:flex; flex-direction:column; align-items:flex-start;
  font-size:clamp(45px,4.65vw,76px);
  line-height:1.125; letter-spacing:-.059em; font-weight:755;
  gap:clamp(8px,1.4vw,17px);
  text-align:left; margin:clamp(26px,3vw,40px) 0 0; padding:0 0 .08em;
}
.hp .hp-hero-line { line-height:inherit; text-wrap:balance; }
.hp .hp-hero-highlight { color:#b93521; }
.hp .hp-lead {
  margin:clamp(23px,2.7vw,37px) 0 0!important;
  max-width:490px; font-size:clamp(16px,1.25vw,18px); line-height:1.72;
  text-align:left; color:#625950;
}
.hp .hp-hero-actions {
  justify-content:flex-start; gap:clamp(13px,1.4vw,23px);
  margin-top:clamp(29px,3vw,44px);
}
.hp .hp-hero-actions .hp-btn {
  min-height:54px; box-shadow:0 12px 27px rgba(144,38,27,.17);
}
.hp .hp-hero-actions svg { width:18px; height:18px; flex:none; }
.hp .hp-secondary { display:inline-flex; min-height:52px; align-items:center; gap:12px; color:#493e38; }
.hp .hp-secondary svg { width:17px; height:17px; transition:transform .22s ease; }
.hp .hp-secondary:hover svg { transform:translate(3px,-3px); }
.hp .hp-hero-note {
  display:flex; align-items:center; gap:10px; text-align:left;
  font-size:12px; font-weight:600; letter-spacing:.005em;
  color:#83776e; margin-top:clamp(20px,2vw,30px)!important;
}
.hp-hero-note-mark { display:inline-block; width:20px; height:1px; background:#c8afa4; flex:none; }
.hp .hp-hero-preview {
  width:calc(100% + clamp(0px,2.6vw,45px)); max-width:none;
  min-width:0; margin:0; padding:35px 0 25px; position:relative;
}
.hp .hp-hero-vector { right:-35px; top:-42px; z-index:-1; opacity:.8; width:164px; height:164px; }
.hp .hp-window {
  position:relative; border:1px solid rgba(132,99,80,.31);
  border-radius:16px; box-shadow:0 33px 87px rgba(64,36,24,.16),0 10px 24px rgba(64,36,24,.08);
  background:#fff; overflow:hidden;
}
.hp .hp-window-top {
  height:50px; padding:0 17px; display:grid;
  grid-template-columns:1fr auto 1fr; gap:12px; background:#fff;
  border-bottom:1px solid #e7e1dc;
}
.hp .hp-window-dots { justify-self:start; display:flex; align-items:center; }
.hp .hp-window-label { justify-self:center; white-space:nowrap; font-size:11px; color:#665a53; letter-spacing:.025em; }
.hp .hp-window-label span { display:inline-block; padding:0 5px; color:#c4aca1; }
.hp .hp-window-mark {
  justify-self:end; width:33px; height:33px; border-radius:9px;
  display:grid; place-items:center; background:#f8f4f0;
  border:1px solid rgba(185,53,33,.13);
}
.hp .hp-window-mark img { display:block; width:24px; height:24px; object-fit:contain; }
.hp .hp-dashboard { width:100%; height:auto; max-height:none; aspect-ratio:3000/1800; object-fit:cover; object-position:top left; }
.hp .hp-preview-caption {
  display:flex; align-items:center; justify-content:flex-start; gap:11px;
  margin:18px 0 0; font-size:10px; text-align:left; letter-spacing:.11em;
  font-weight:750; color:#8b766b;
}
.hp-preview-dot { width:6px; height:6px; flex:none; background:var(--hp-accent); border-radius:50%; }
.hp-preview-caption-line { width:23px; height:1px; background:#d6b9aa; }
.hp .hp-hero-rail {
  display:flex; align-items:center; justify-content:space-between;
  gap:12px 20px; padding:24px 0 25px; margin-top:clamp(24px,4vw,55px);
  border-top:1px solid rgba(133,106,91,.22); color:#70665e;
}
.hp .hp-hero-rail > span,.hp .hp-hero-rail > a {
  display:inline-flex; align-items:center; gap:9px;
  font-size:11px; font-weight:650; white-space:nowrap;
}
.hp .hp-hero-rail svg { width:17px; height:17px; color:#af6a56; flex:none; }
.hp .hp-hero-rail > a { color:#a83a2b; }
.hp .hp-hero-rail > a:hover { color:#7f271e; }
@media (min-width:1550px) {
  .hp .hp-hero-grid { gap:85px; }
  .hp .hp-hero h1 { font-size:76px; }
}
@media (max-width:1120px) {
  .hp .hp-hero-grid { grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:24px; }
  .hp .hp-hero h1 { font-size:clamp(43px,5.2vw,65px); }
  .hp .hp-hero-preview { width:calc(100% + 15px); }
  .hp .hp-hero-rail { flex-wrap:wrap; justify-content:center; gap:15px 30px; }
}
@media (max-width:820px) {
  .hp .hp-hero { padding-top:50px; }
  .hp .hp-hero-grid { grid-template-columns:minmax(0,1fr); gap:0; }
  .hp .hp-hero-copy { text-align:center; max-width:690px; margin:0 auto; padding:0 0 10px; }
  .hp .hp-hero .hp-eyebrow { justify-content:center; text-align:center; }
  .hp .hp-hero h1 { align-items:center; margin:23px auto 0; text-align:center; font-size:clamp(46px,7vw,65px); gap:6px; }
  .hp .hp-hero-line { text-align:center; }
  .hp .hp-lead { margin:24px auto 0!important; text-align:center; max-width:570px; font-size:16px; }
  .hp .hp-hero-actions { justify-content:center; margin-top:26px; }
  .hp .hp-hero-note { justify-content:center; margin-top:17px!important; }
  .hp .hp-hero-preview { width:100%; margin:25px 0 0; padding:14px 0 7px; }
  .hp .hp-hero-vector { right:-32px; top:-18px; width:112px; height:112px; }
  .hp .hp-hero-rail { margin-top:21px; padding:18px 0; gap:12px 24px; }
  .hp .hp-preview-caption { margin-top:14px; }
}
@media (max-width:520px) {
  .hp .hp-hero { padding-top:35px; }
  .hp .hp-hero h1 {
    font-size:clamp(36px,9vw,46px);
    line-height:1.19; letter-spacing:-.047em; gap:5px;
    margin-top:20px; padding-bottom:.05em;
  }
  .hp .hp-hero-copy { padding:0; }
  .hp .hp-eyebrow { font-size:10px; letter-spacing:.105em; }
  .hp .hp-lead { margin:19px auto 0!important; font-size:14.5px; line-height:1.7; max-width:370px; }
  .hp .hp-hero-actions { margin-top:22px; gap:8px; }
  .hp .hp-hero-actions .hp-btn { min-height:48px; font-size:13px; padding-inline:15px; gap:13px; }
  .hp .hp-secondary { font-size:12px; padding:8px; gap:8px; }
  .hp .hp-secondary svg { width:14px; height:14px; }
  .hp .hp-hero-note { margin-top:13px!important; font-size:11px; }
  .hp .hp-hero-preview { margin-top:15px; padding-top:10px; }
  .hp .hp-window { border-radius:11px; box-shadow:0 16px 37px rgba(64,36,24,.13); }
  .hp .hp-window-top { height:38px; padding:0 9px; gap:4px; }
  .hp .hp-window-label { font-size:9px; }
  .hp .hp-window-mark { width:27px; height:27px; border-radius:7px; }
  .hp .hp-window-mark img { width:21px; height:21px; }
  .hp .hp-preview-caption { font-size:9px; gap:8px; flex-wrap:wrap; line-height:1.4; }
  .hp .hp-hero-rail { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 8px; text-align:left; }
  .hp .hp-hero-rail > span,.hp .hp-hero-rail > a { font-size:10px; white-space:normal; line-height:1.4; }
  .hp .hp-hero-rail svg { width:16px; height:16px; }
}
@media (max-width:350px) {
  .hp .hp-hero h1 { font-size:34px; }
  .hp .hp-hero-actions { flex-direction:column; }
  .hp .hp-hero-actions .hp-btn { width:100%; }
}
@media (prefers-reduced-motion:reduce) {
  .hp .hp-hero .hp-window { transition:none; }
  .hp .hp-hero-vector { animation:none; }
}


/* Homepage workspace preview: an image-led editorial chapter, not a dense card grid. */
.hp-workspace-explore {
  padding:clamp(82px,9vw,130px) 0;
  background:#f0eae4;
  border-block:1px solid #e7dbd1;
  overflow:hidden;
}
.hp-workspace-heading {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,.53fr);
  gap:clamp(28px,6vw,100px);
  align-items:end;
  margin-bottom:clamp(36px,4.5vw,62px);
}
.hp-workspace-heading h2 {
  margin-top:23px;
  font-size:clamp(43px,5.3vw,78px);
  font-weight:745;
  letter-spacing:-.062em;
  line-height:1.09;
  text-wrap:balance;
}
.hp-workspace-heading h2 em {font-style:normal;color:var(--hp-accent)}
.hp-workspace-heading > p {
  max-width:405px;
  padding-bottom:9px;
  color:#665d55;
  font-size:clamp(15px,1.3vw,18px);
  line-height:1.77;
  text-wrap:pretty;
}
.hp-workspace-layout {
  display:grid;
  grid-template-columns:minmax(0,1.57fr) minmax(280px,.65fr);
  align-items:center;
  gap:clamp(35px,5vw,82px);
}
.hp-workspace-stage {
  position:relative;
  min-width:0;
  margin:0;
  overflow:hidden;
  background:#fff;
  border:1px solid #d9cabe;
  border-radius:11px;
  box-shadow:0 34px 72px rgba(63,40,28,.13),0 5px 14px rgba(63,40,28,.055);
}
.hp-workspace-stage-top {
  display:flex;
  align-items:center;
  gap:9px;
  padding:15px 18px;
  color:#9a4b3a;
  background:#faf8f6;
  border-bottom:1px solid #eae1db;
  font-size:10px;
  font-weight:740;
  letter-spacing:.12em;
}
.hp-workspace-stage-dot {
  display:block;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--hp-accent);
}
.hp-workspace-stage-name {margin-left:auto;color:#81746c;letter-spacing:.065em;font-weight:650}
.hp-workspace-stage .hp-workspace-shot {
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
  aspect-ratio:3000 / 1502;
  background-color:#fff;
}
.hp-workspace-stage figcaption {
  border-top:1px solid #ece3dc;
  padding:11px 19px 13px;
  font-size:11px;
  color:#85776f;
  letter-spacing:.025em;
}
.hp-workspace-directory {min-width:0;display:flex;flex-direction:column}
.hp-workspace-entry {
  display:grid;
  align-content:center;
  gap:7px;
  position:relative;
  padding:24px 35px 24px 0;
  min-height:133px;
  border-top:1px solid #d9cabe;
  transition:padding-left .25s ease,color .25s ease;
}
.hp-workspace-entry:last-of-type {border-bottom:1px solid #d9cabe}
.hp-workspace-entry:hover {padding-left:7px;color:var(--hp-accent)}
.hp-workspace-index {
  color:#9e5a48;
  font-size:10px;
  font-weight:750;
  letter-spacing:.13em;
}
.hp-workspace-entry strong {
  color:#312b27;
  font-size:clamp(20px,2vw,27px);
  line-height:1.2;
  letter-spacing:-.046em;
  font-weight:740;
}
.hp-workspace-entry small {color:#73685f;font-size:13px;line-height:1.65}
.hp-workspace-entry svg {
  position:absolute;
  right:0;
  top:46px;
  width:19px;
  height:19px;
  color:var(--hp-accent);
  transition:transform .25s ease;
}
.hp-workspace-entry:hover svg {transform:translate(3px,-3px)}
.hp-workspace-more {
  display:inline-flex;
  align-items:center;
  align-self:flex-start;
  gap:15px;
  margin-top:27px;
  padding:5px 0;
  color:#9c3223!important;
  font-size:14px;
  font-weight:730;
  border-bottom:1px solid #b04c3a;
}
.hp-workspace-more svg {width:17px;height:17px}
.hp-workspace-more:hover svg {transform:translate(3px,-3px)}
@media (max-width:990px) {
  .hp-workspace-heading {grid-template-columns:minmax(0,1fr) minmax(240px,.68fr);gap:26px}
  .hp-workspace-layout {grid-template-columns:minmax(0,1fr);gap:34px}
  .hp-workspace-directory {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 22px}
  .hp-workspace-entry {min-height:145px;padding-top:22px;padding-bottom:22px}
  .hp-workspace-entry:last-of-type {border-bottom:0}
  .hp-workspace-more {grid-column:1/-1;margin-top:18px}
}
@media (max-width:700px) {
  .hp-workspace-explore {padding:76px 0 84px}
  .hp-workspace-heading {grid-template-columns:minmax(0,1fr);gap:18px;margin-bottom:29px}
  .hp-workspace-heading h2 {font-size:clamp(40px,8.5vw,57px);margin-top:17px}
  .hp-workspace-heading > p {padding-bottom:0;font-size:15px}
  .hp-workspace-stage-top {padding:12px;font-size:9px}
  .hp-workspace-stage-name {display:none}
  .hp-workspace-directory {grid-template-columns:minmax(0,1fr)}
  .hp-workspace-entry {min-height:0;padding:21px 35px 21px 0}
  .hp-workspace-entry:last-of-type {border-bottom:1px solid #d9cabe}
  .hp-workspace-entry strong {font-size:23px}
  .hp-workspace-entry svg {top:37px}
}
@media (max-width:430px) {
  .hp-workspace-heading h2 {font-size:clamp(36px,9vw,44px)}
  .hp-workspace-stage {border-radius:8px}
  .hp-workspace-stage figcaption {font-size:10px;padding:9px 12px}
  .hp-workspace-layout {gap:28px}
}
@media (prefers-reduced-motion:reduce) {
  .hp-workspace-entry,.hp-workspace-entry svg {transition:none}
}


/* 2026 public homepage visual system: wide editorial canvas, not a narrow app card.
   Scoped to .hp-home so /platform and every legal/support page stay unchanged. */
.hp-home { --hp-page-width:1920px; background:var(--ds-background); }
.hp-home .hp-wrap { width:min(calc(100% - clamp(40px,5.2vw,128px)),var(--hp-page-width)); max-width:none; }
.hp-home .hp-header { background:rgba(248,246,243,.91); }
.hp-home .hp-header-inner { min-height:82px; }
.hp-home .hp-hero { position:relative; padding:clamp(55px,5.6vw,105px) 0 0; background:radial-gradient(ellipse 64% 87% at 89% 38%,rgba(185,53,33,.09),transparent 73%),linear-gradient(125deg,#f9f7f4 18%,#f1eae4 100%); }
.hp-home .hp-hero-backdrop { position:absolute; inset:0 0 auto auto; width:82%; height:100%; min-height:690px; pointer-events:none; z-index:0; }
.hp-home .hp-hero-grid { position:relative; z-index:1; max-width:none; grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr); gap:clamp(36px,4vw,90px); align-items:center; }
.hp-home .hp-hero-copy { max-width:760px; padding:0 0 30px; }
.hp-home .hp-hero h1 { font-size:clamp(52px,4.3vw,86px); line-height:1.105; letter-spacing:-.061em; gap:clamp(9px,1.1vw,18px); margin-top:30px; }
.hp-home .hp-lead { font-size:clamp(17px,1.2vw,21px); max-width:580px; line-height:1.7; }
.hp-home .hp-hero-preview { width:100%; min-width:0; padding:30px 0 28px; }
.hp-home .hp-window { border-radius:19px; box-shadow:0 40px 95px rgba(60,33,23,.19),0 10px 24px rgba(60,33,23,.06); }
.hp-home .hp-window-top { height:52px; }
.hp-home .hp-hero-vector { right:-40px; top:-50px; width:190px; height:190px; opacity:.75; }
.hp-home .hp-hero-signals { position:absolute; inset:0; pointer-events:none; z-index:2; }
.hp-home .hp-signal { position:absolute; display:inline-flex; gap:9px; align-items:center; padding:12px 16px; background:rgba(255,253,250,.93); border:1px solid rgba(171,123,104,.22); box-shadow:0 18px 48px rgba(63,40,28,.12); backdrop-filter:blur(12px); border-radius:11px; color:#5f4e46; font-size:10px; font-weight:760; letter-spacing:.11em; }
.hp-home .hp-signal svg { width:18px; height:18px; color:#b93521; }
.hp-home .hp-signal b { font-size:10px; color:#b93521; padding-right:3px; }
.hp-home .hp-signal-sales { top:0; left:-28px; animation:hp-gentle-float 7s ease-in-out infinite; }
.hp-home .hp-signal-finance { right:-14px; bottom:65px; animation:hp-gentle-float 8s ease-in-out -3s infinite; }
.hp-home .hp-hero-rail { position:relative; z-index:1; border-top:1px solid rgba(133,106,91,.23); margin-top:clamp(28px,3.5vw,74px); padding:26px 0 28px; }
.hp-home .hp-hero-rail > span,.hp-home .hp-hero-rail > a { font-size:12px; }
/* An SVG-connected workflow map with a brand hub. All five text nodes remain
   readable when the decorative paths are hidden at smaller breakpoints. */
.hp-home .hp-bridge { position:relative; overflow:hidden; padding-block:clamp(100px,8vw,155px); background:linear-gradient(180deg,#fff 0%,#fcfaf8 100%); }
.hp-home .hp-bridge::before { content:""; position:absolute; width:56vw; height:56vw; max-width:1000px; max-height:1000px; right:-26vw; bottom:-34vw; border:1px solid rgba(185,53,33,.055); border-radius:50%; box-shadow:0 0 0 60px rgba(185,53,33,.017),0 0 0 145px rgba(185,53,33,.012); pointer-events:none; }
.hp-home .hp-bridge-lead { position:relative; z-index:1; grid-template-columns:minmax(0,1.3fr) minmax(0,.65fr); gap:clamp(40px,6vw,140px); }
.hp-home .hp-bridge-aside { justify-self:end; max-width:500px; }
.hp-home .hp-bridge h2 { max-width:1050px; }
.hp-home .hp-system-map { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(240px,.77fr) minmax(0,1fr); align-items:center; gap:clamp(15px,2.5vw,55px); min-height:470px; margin-top:clamp(48px,5.2vw,92px); padding:clamp(25px,4vw,65px); border:1px solid #e8d8ce; border-radius:25px; background:radial-gradient(ellipse 36% 84% at 50% 50%,rgba(185,53,33,.095),transparent 80%),radial-gradient(ellipse 46% 90% at 100% 5%,rgba(225,204,190,.26),transparent 75%),#fbf8f5; box-shadow:0 27px 72px rgba(55,34,23,.055); }
.hp-home .hp-system-wires { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
.hp-home .hp-system-column { position:relative; z-index:1; display:grid; align-items:stretch; gap:20px; }
.hp-home .hp-system-left { grid-column:1; }
.hp-home .hp-system-right { grid-column:3; }
.hp-home .hp-system-node { display:grid; grid-template-columns:48px minmax(0,1fr); align-items:start; column-gap:15px; padding:clamp(15px,1.45vw,23px); background:rgba(255,255,255,.94); border:1px solid #e6dcd3; border-radius:14px; box-shadow:0 12px 32px rgba(52,33,22,.055); min-width:0; transition:transform .25s ease,box-shadow .25s ease; }
.hp-home .hp-system-node:hover { transform:translateY(-3px); box-shadow:0 17px 40px rgba(52,33,22,.095); }
.hp-home .hp-system-node-icon { display:grid; width:46px; height:46px; place-items:center; border-radius:11px; background:#f6eae5; color:#a63827; }
.hp-home .hp-system-node-icon svg { width:23px; height:23px; }
.hp-home .hp-system-node small { display:block; margin:1px 0 5px; color:#a14c39; font-size:10px; font-weight:750; letter-spacing:.11em; line-height:1.3; }
.hp-home .hp-system-node strong { display:block; color:#332d29; font-size:clamp(17px,1.36vw,23px); line-height:1.25; letter-spacing:-.035em; }
.hp-home .hp-system-node em { display:block; margin-top:7px; color:#776b63; font-size:12px; font-style:normal; line-height:1.5; }
.hp-home .hp-system-core { position:relative; grid-column:2; z-index:1; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; min-width:0; }
.hp-home .hp-system-ring { display:grid; place-items:center; width:clamp(120px,11vw,186px); height:clamp(120px,11vw,186px); border-radius:50%; background:linear-gradient(145deg,#fff,#f5e8e0); border:1px solid #e3c7bb; box-shadow:0 0 0 12px rgba(185,53,33,.045),0 0 0 38px rgba(185,53,33,.026),0 20px 55px rgba(150,63,37,.09); }
.hp-home .hp-system-ring img { width:48%; height:48%; object-fit:contain; }
.hp-home .hp-system-core small { display:block; margin-top:30px; color:#a64a38; letter-spacing:.14em; font-size:10px; font-weight:790; line-height:1.5; }
.hp-home .hp-system-core strong { margin-top:8px; color:#382c27; font-size:clamp(19px,2vw,28px); line-height:1.22; letter-spacing:-.05em; text-wrap:balance; }
.hp-home .hp-spotlight { position:relative; isolation:isolate; overflow:hidden; padding-block:clamp(105px,8vw,155px); background:radial-gradient(ellipse 40% 70% at 100% 10%,rgba(192,77,56,.13),transparent 73%),#272321; }
.hp-home .hp-spotlight-art { position:absolute; pointer-events:none; width:min(60vw,1000px); height:auto; top:-120px; right:-70px; opacity:.85; z-index:-1; }
.hp-home .hp-spotlight>.hp-wrap { position:relative; }
.hp-home .hp-spotlight-body { grid-template-columns:minmax(270px,.36fr) minmax(0,1fr); gap:clamp(32px,5vw,105px); }
.hp-home .hp-spotlight-media>.hp-image-link>picture>.hp-showcase-pos { width:100%; border-radius:14px; box-shadow:0 40px 100px rgba(0,0,0,.33); }
.hp-home .hp-story { position:relative; padding-block:clamp(105px,9vw,165px); }
.hp-home .hp-story-art { position:absolute; right:2%; top:clamp(44px,6vw,105px); width:clamp(220px,23vw,420px); height:auto; pointer-events:none; }
.hp-home .hp-story-heading { position:relative; z-index:1; }
.hp-home .hp-story-layout { grid-template-columns:minmax(0,1.65fr) minmax(280px,.65fr); gap:clamp(45px,6vw,120px); }
.hp-home .hp-story-visual>.hp-image-link>picture>.hp-showcase-reports { border-radius:14px; }
.hp-home .hp-workspace-explore { position:relative; isolation:isolate; padding-block:clamp(105px,8vw,155px); background:linear-gradient(135deg,#f3ebe5,#eee3d9); }
.hp-home .hp-workspace-explore::before { content:""; pointer-events:none; position:absolute; width:68%; height:100%; right:0; top:0; z-index:-1; background:linear-gradient(rgba(169,88,61,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(169,88,61,.055) 1px,transparent 1px); background-size:55px 55px; mask-image:linear-gradient(90deg,transparent,#000); }
.hp-home .hp-workspace-layout { grid-template-columns:minmax(0,1.62fr) minmax(300px,.57fr); gap:clamp(30px,5vw,95px); }
.hp-home .hp-workspace-stage { border-radius:16px; box-shadow:0 40px 90px rgba(63,40,28,.15); }
.hp-home .hp-flexible { padding-block:clamp(105px,8vw,160px); background:radial-gradient(ellipse 42% 52% at 10% 78%,rgba(185,53,33,.045),transparent 80%),#fff; }
.hp-home .hp-flexible-grid { gap:clamp(48px,7vw,175px); }
.hp-home .hp-sectors>div { grid-template-columns:48px minmax(0,1fr) 26px; gap:20px; padding:24px 4px; }
.hp-home .hp-sector-icon { display:grid; place-items:center; width:42px; height:42px; color:#b93521; background:#f8ede7; border:1px solid #f0d8cd; border-radius:12px; }
.hp-home .hp-sector-icon svg { width:22px; height:22px; }
.hp-home .hp-settings-showcase { max-width:none; margin-top:clamp(65px,6vw,115px); }
.hp-home .hp-start { padding-block:clamp(100px,8vw,150px); gap:clamp(45px,8vw,160px); }
/* Layer order: subtle rings behind content, brand mark clearly above artwork. */
.hp-home .hp-final-inner { min-height:clamp(440px,35vw,630px); z-index:1; }
.hp-home .hp-final::before { content:""; position:absolute; inset:0; z-index:0; pointer-events:none; background:repeating-radial-gradient(circle at 86% 55%,transparent 0 65px,rgba(255,255,255,.065) 66px 67px,transparent 68px 125px); }
.hp-home .hp-final-copy { z-index:3; }
.hp-home .hp-final-watermark { width:min(36vw,600px); opacity:.24; z-index:2; }
@keyframes hp-gentle-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-9px); } }
@media (min-width:1700px) {
 .hp-home .hp-hero-grid { gap:clamp(80px,5vw,120px); }
 .hp-home .hp-hero h1 { font-size:clamp(68px,4.4vw,86px); }
 .hp-home .hp-hero { padding-top:clamp(95px,7vw,135px); }
 .hp-home .hp-hero-rail { margin-top:70px; }
 .hp-home .hp-system-map { min-height:520px; }
}
@media (max-width:1200px) {
 .hp-home .hp-hero-grid { grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:32px; }
 .hp-home .hp-hero h1 { font-size:clamp(42px,4.55vw,59px); }
 .hp-home .hp-system-map { grid-template-columns:minmax(0,1fr) minmax(170px,.65fr) minmax(0,1fr); gap:15px; padding:26px; }
 .hp-home .hp-system-node { grid-template-columns:35px minmax(0,1fr); gap:10px; padding:15px; }
 .hp-home .hp-system-node-icon { width:34px; height:34px; }
 .hp-home .hp-system-node-icon svg { width:19px; height:19px; }
 .hp-home .hp-system-node em { font-size:11px; }
 .hp-home .hp-story-layout,.hp-home .hp-workspace-layout { gap:36px; }
}
@media (max-width:900px) {
 .hp-home .hp-wrap { width:calc(100% - 44px); }
 .hp-home .hp-hero-backdrop { width:100%; opacity:.7; }
 .hp-home .hp-hero-grid { grid-template-columns:minmax(0,1fr); }
 .hp-home .hp-hero-copy { text-align:center; max-width:710px; margin:0 auto; padding:0; }
 .hp-home .hp-hero .hp-eyebrow { justify-content:center; text-align:center; }
 .hp-home .hp-hero h1 { font-size:clamp(44px,6.5vw,66px); text-align:center; align-items:center; }
 .hp-home .hp-lead { text-align:center; margin-inline:auto!important; font-size:17px; }
 .hp-home .hp-hero-actions,.hp-home .hp-hero-note { justify-content:center; }
 .hp-home .hp-hero-preview { margin-top:10px; padding-top:32px; }
 .hp-home .hp-hero-signals { display:none; }
 .hp-home .hp-hero-rail { margin-top:15px; }
 .hp-home .hp-system-map { grid-template-columns:repeat(2,minmax(0,1fr)); min-height:0; gap:20px; }
 .hp-home .hp-system-core { order:-1; grid-column:1/-1; padding:24px 0 34px; }
 .hp-home .hp-system-column { grid-column:auto; align-self:stretch; align-content:center; }
 .hp-home .hp-system-wires { display:none; }
 .hp-home .hp-system-node { grid-template-columns:40px minmax(0,1fr); }
 .hp-home .hp-system-node-icon { width:40px; height:40px; }
 .hp-home .hp-spotlight-body { grid-template-columns:minmax(0,1fr); }
 .hp-home .hp-spotlight-art { width:780px; right:-360px; opacity:.45; }
 .hp-home .hp-story-art { opacity:.48; }
 .hp-home .hp-story-layout { grid-template-columns:minmax(0,1fr); gap:28px; }
 .hp-home .hp-story-aside { padding:0; }
 .hp-home .hp-story-aside-main { margin:12px 0; }
 .hp-home .hp-workspace-layout { grid-template-columns:minmax(0,1fr); }
}
@media (max-width:700px) {
 .hp-home .hp-wrap { width:calc(100% - 38px); }
 .hp-home .hp-header-inner { min-height:67px; }
 .hp-home .hp-hero { padding-top:48px; }
 .hp-home .hp-hero h1 { font-size:clamp(40px,8.1vw,56px); margin-top:23px; gap:5px; line-height:1.14; }
 .hp-home .hp-lead { font-size:15px; line-height:1.74; margin-top:22px!important; }
 .hp-home .hp-hero-preview { padding:14px 0 8px; margin-top:22px; }
 .hp-home .hp-window { border-radius:11px; }
 .hp-home .hp-window-top { height:36px; }
 .hp-home .hp-hero-rail { gap:12px; }
 .hp-home .hp-hero-rail > span,.hp-home .hp-hero-rail > a { font-size:10px; }
 .hp-home .hp-bridge,.hp-home .hp-spotlight,.hp-home .hp-flexible { padding-block:79px; }
 .hp-home .hp-bridge-lead { grid-template-columns:minmax(0,1fr); gap:23px; }
 .hp-home .hp-bridge-aside { justify-self:start; }
 .hp-home .hp-system-map { margin-top:37px; padding:22px 17px; border-radius:17px; grid-template-columns:minmax(0,1fr); gap:13px; }
 .hp-home .hp-system-core { grid-column:1; padding:13px 0 25px; }
 .hp-home .hp-system-ring { width:115px; height:115px; }
 .hp-home .hp-system-core small { margin-top:24px; }
 .hp-home .hp-system-column { grid-column:1; gap:12px; }
 .hp-home .hp-system-node { padding:15px; grid-template-columns:42px minmax(0,1fr); }
 .hp-home .hp-system-node-icon { width:40px; height:40px; }
 .hp-home .hp-system-node strong { font-size:19px; }
 .hp-home .hp-spotlight-art { right:-420px; }
 .hp-home .hp-story { padding-block:85px; }
 .hp-home .hp-story-art { top:20px; right:0; width:150px; opacity:.3; }
 .hp-home .hp-workspace-explore { padding-block:82px; }
 .hp-home .hp-workspace-directory { grid-template-columns:minmax(0,1fr); }
 .hp-home .hp-sectors>div { gap:12px; padding:17px 0; grid-template-columns:40px minmax(0,1fr) 23px; }
 .hp-home .hp-sector-icon { width:36px; height:36px; }
 .hp-home .hp-sector-icon svg { width:19px; height:19px; }
 .hp-home .hp-start { padding-block:80px; }
 .hp-home .hp-settings-showcase { margin-top:60px; }
 /* On narrow screens the logo gets its own space below the CTA rather than being
    clipped outside the right edge or hidden by the circular background design. */
 .hp-home .hp-final-inner {
   min-height:0;
   display:flex;
   flex-direction:column;
   align-items:stretch;
   gap:clamp(30px,6vw,42px);
   padding:clamp(67px,10vw,85px) 0 48px;
 }
 .hp-home .hp-final::before {
   background:repeating-radial-gradient(circle at 50% 76%,transparent 0 53px,rgba(255,255,255,.09) 54px 55px,transparent 56px 105px);
 }
 .hp-home .hp-final-watermark {
   position:relative;
   display:block;
   flex:none;
   align-self:center;
   top:auto;
   right:auto;
   width:clamp(155px,44vw,220px);
   max-width:100%;
   height:auto;
   margin:0 auto;
   transform:none;
   opacity:.95;
   z-index:2;
   filter:brightness(0) invert(1);
 }
}
@media (max-width:430px) {
 .hp-home .hp-wrap { width:calc(100% - 32px); }
 .hp-home .hp-hero h1 { font-size:clamp(35px,9vw,42px); }
 .hp-home .hp-window-label { font-size:8px; }
 .hp-home .hp-hero-rail { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (prefers-reduced-motion:reduce) {
 .hp-home .hp-signal { animation:none!important; }
 .hp-home .hp-system-node { transition:none; }
}

/* Screenshots: keep the editorial composition, but let people inspect every
   original lossless screenshot instead of pinch-zooming a mobile thumbnail. */
.hp-image-link { position:relative; display:block; min-width:0; max-width:100%; text-decoration:none; cursor:zoom-in; }
.hp-image-link picture { display:block; width:100%; min-width:0; }
.hp-image-link img { display:block; }
.hp-image-link::after {
  content:"View full resolution ↗";
  position:absolute; inset:auto 12px 12px auto; z-index:2;
  padding:7px 10px; border-radius:7px;
  background:rgba(28,25,23,.88); color:#fff;
  font:650 11px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:.01em; box-shadow:0 3px 14px rgba(0,0,0,.15);
  opacity:0; pointer-events:none;
}
.hp-image-link:hover::after,.hp-image-link:focus-visible::after { opacity:1; }
.hp-image-link:focus-visible { outline:3px solid var(--hp-accent); outline-offset:3px; }

/* Touch browsers spend battery and main-thread time repainting blurred sticky
   surfaces and running endless floating animations. Keep their composition,
   while making the mobile experience static and immediately readable. */
@media (max-width:760px), (pointer:coarse) {
  .hp-header { backdrop-filter:none; -webkit-backdrop-filter:none; background:#f8f6f3; }
  .hp-home .hp-signal { backdrop-filter:none; animation:none!important; }
  .hp-hero-vector { animation:none!important; }
  .hp-image-link::after { opacity:1; font-size:12px; }
  .hp-motion-enabled .hp-reveal { opacity:1!important; transform:none!important; transition:none!important; }
}
@media (max-width:760px) {
  /* Native content visibility avoids laying out and painting every long
     marketing chapter before the visitor scrolls anywhere near it. */
  .hp-home > section:not(.hp-hero), .hp-page-section {
    content-visibility:auto;
    contain-intrinsic-size:auto 850px;
  }
}

/* The official uploaded horizontal logo includes the nib, RACOPAES wordmark
   and tagline. Do not add a duplicate text label alongside the image. */
.hp .hp-brand-full { display:inline-flex; align-items:center; flex:none; min-width:0; letter-spacing:normal; }
.hp .hp-logo-lockup { display:block; flex:none; line-height:0; }
.hp .hp-logo-full { display:block; width:220px; height:auto; max-width:100%; object-fit:contain; }
.hp .hp-footer .hp-logo-full { width:205px; }
@media (max-width:700px) {
  .hp .hp-header-inner { gap:10px; }
  .hp .hp-header .hp-logo-full { width:clamp(112px,34vw,158px); }
  .hp .hp-footer .hp-logo-full { width:190px; }
}
@media (max-width:420px) {
  .hp .hp-header-inner { gap:7px; }
  .hp .hp-header .hp-logo-full { width:clamp(102px,32vw,133px); }
  .hp .hp-header .hp-btn-small { padding-inline:9px; gap:8px; font-size:11px; }
}

/* Compact, consistently padded header. The logo file retains its original
   500 × 174 canvas; only its CSS display width changes. */
.hp .hp-header-inner {
  min-height:76px;
  padding-block:6px;
  gap:clamp(12px,2vw,24px);
}
.hp .hp-header .hp-brand-full {
  padding:0;
  margin:0;
  border-radius:6px;
}
.hp .hp-header .hp-logo-full { width:168px; height:auto; }
.hp .hp-header .hp-nav { gap:clamp(16px,2vw,30px); }
.hp .hp-footer .hp-brand-full { padding-block:6px; }
@media (max-width:900px) {
  .hp .hp-header-inner { min-height:70px; padding-block:6px; gap:12px; }
  .hp .hp-header .hp-logo-full { width:150px; }
}
@media (max-width:700px) {
  .hp .hp-header-inner { min-height:64px; padding-block:7px; gap:10px; }
  .hp .hp-header .hp-logo-full { width:clamp(115px,29vw,134px); }
}
@media (max-width:420px) {
  .hp .hp-header-inner { min-height:64px; padding-block:7px; gap:8px; }
  .hp .hp-header .hp-logo-full { width:clamp(104px,28vw,118px); }
  .hp .hp-header .hp-btn-small { padding-inline:9px; gap:8px; font-size:11px; }
}
