/* Public Rhythm identity. Shared with pricing and demo enquiries. */
.public-site{--ink:var(--rs-ink);--muted:var(--rs-secondary);--teal:var(--rs-teal);--line:var(--rs-hairline);--paper:var(--rs-paper);--header-height:76px;background:var(--paper);font-family:var(--rs-display);color:var(--ink)}
.public-site :is(h1,h2,h3){font-family:var(--rs-display);letter-spacing:-.035em;font-weight:650}
.public-site ::selection{background:#c4e9d9;color:#183c34}
.public-site .public-header{height:var(--header-height);background:#f6f8f7f2;border-bottom:1px solid var(--line);box-shadow:none;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding-inline:max(24px,calc((100vw - 1320px)/2));transition:background-color .2s ease}
.public-site.rs-scrolled .public-header{background:#f6f8f7fa}
.public-site .public-brand{font-size:22px;letter-spacing:-.04em;font-weight:750;gap:9px}.public-site .brand-period{display:none}.public-brand img{border-radius:25%;width:32px;height:32px}
.public-site .public-header nav{font-size:13px;gap:30px}.public-site .public-header nav>a{border-radius:7px;white-space:nowrap}.public-site .login-link{background:var(--ink);color:#fff;border:0;min-height:44px;padding:11px 16px;gap:14px}
.public-site :is(.cta,.outlined-cta){display:inline-flex;align-items:center;justify-content:center;gap:22px;border-radius:8px;font-size:14px;line-height:1.4;font-weight:650;min-height:48px;padding:14px 20px;box-shadow:none;text-decoration:none;transition:background-color .15s ease,transform .15s var(--rs-ease)}
.public-site .cta{background:var(--teal);color:#fff;border:1px solid var(--teal)}.public-site .outlined-cta{background:transparent;border:1px solid #9fb5ae;color:var(--ink)}
.public-site :is(.cta,.outlined-cta,.login-link):active{transform:scale(.98)}
@media(hover:hover) and (pointer:fine){.public-site .cta:hover{background:#085950;transform:none}.public-site .outlined-cta:hover{background:#e8efeb;transform:none}.public-site .login-link:hover{background:#294c50}.public-site .public-header nav>a:not(.login-link):hover{color:var(--teal)}}
.public-site :is(a,button,input,select,textarea):focus-visible{outline:2px solid #126d62;outline-offset:4px}
.public-site input::placeholder,.public-site textarea::placeholder{color:#59716b}
.public-site :is(.plan-card,.book-form,.enquiry-panel){border-radius:12px;box-shadow:none;background:#fff;border-color:var(--line)}
.public-site .pilot-plan{background:#e7f1ec}.public-site .billing-choice{border-radius:8px}.public-site .price-result{border-radius:10px}
.public-site .pricing-hero h1,.public-site .enquiry-intro h1{letter-spacing:-.04em}.public-site .kicker{color:var(--teal)}
.public-site .public-footer{border-top:1px solid var(--line);padding-block:28px;font-size:12px}.public-footer p{font-size:12px;color:var(--muted)}.public-footer .public-brand{font-size:18px}.public-footer .public-brand img{width:26px;height:26px}
@media(max-width:760px){.public-site{--header-height:64px}.public-site .public-header{padding-inline:18px}.public-site .public-brand{font-size:19px;gap:7px}.public-brand img{width:27px;height:27px}.public-site .public-header nav{gap:16px;font-size:12px}.public-site .login-link{min-height:44px;padding:12px 12px;gap:8px}.public-site :is(.cta,.outlined-cta){min-height:46px;font-size:13px;gap:12px;padding:13px 17px}.public-site .public-footer nav{font-size:12px}}
@media(max-width:370px){.public-site .public-brand{font-size:17px}.public-site .public-header nav{gap:11px}.public-site .login-link{gap:4px;padding-inline:10px}}
@media(prefers-reduced-motion:reduce){.public-site :is(.cta,.outlined-cta,.login-link){transition:none;transform:none}}
