/* Canonical interaction layer. Loaded last so page-specific CSS cannot silently fork these components. */
.ori-toggle{position:relative;display:inline-grid;grid-template-columns:auto auto;align-items:center;gap:0;min-height:42px;padding:4px;border:1px solid var(--ori-border);border-radius:999px;background:var(--ori-surface-1);color:var(--ori-muted);font:700 11px/1.2 var(--ori-font-body);cursor:pointer;isolation:isolate;overflow:hidden;transition:border-color .24s,background .24s,box-shadow .24s}
.ori-toggle:hover,.ori-toggle:focus-visible{border-color:rgba(255,255,255,.22);outline:none}.ori-toggle:focus-visible{box-shadow:0 0 0 2px rgba(136,59,210,.26)}
.ori-toggle__track{position:absolute;inset:4px;width:calc(50% - 4px);border-radius:999px;background:var(--ori-gradient);transition:transform .3s var(--ori-ease);z-index:0;box-shadow:0 8px 24px rgba(136,59,210,.16)}
.ori-toggle.is-on .ori-toggle__track{transform:translateX(100%)}.ori-dir-rtl .ori-toggle.is-on .ori-toggle__track{transform:translateX(-100%)}
.ori-toggle__thumb{display:none}.ori-toggle__label{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;min-width:128px;min-height:32px;padding:0 16px;color:var(--ori-muted);transition:color .22s}
.ori-toggle:not(.is-on) .ori-toggle__label--off,.ori-toggle.is-on .ori-toggle__label--on{color:#fff}.ori-toggle[disabled]{opacity:.48;cursor:not-allowed}

.ori-expand-card{min-height:0!important;height:auto!important;overflow:hidden!important;outline:none;transition:transform .28s var(--ori-ease),background .28s var(--ori-ease),box-shadow .28s var(--ori-ease),border-color .28s var(--ori-ease),padding-bottom .28s var(--ori-ease)!important}
.ori-expand-card:hover,.ori-expand-card:focus,.ori-expand-card:focus-within,.ori-expand-card.is-expanded{min-height:0!important;transform:translateY(-5px)!important;background:linear-gradient(var(--ori-surface-1),var(--ori-surface-1)) padding-box,var(--ori-gradient) border-box!important;border-color:transparent!important;box-shadow:0 22px 58px rgba(136,59,210,.18),0 0 34px rgba(59,208,210,.08)!important}
.ori-expand-card .ori-expand-card__action{display:inline-flex!important;max-height:0!important;min-height:0!important;margin-top:0!important;padding-top:0!important;padding-bottom:0!important;opacity:0!important;transform:translateY(8px)!important;pointer-events:none!important;overflow:hidden!important;transition:max-height .32s var(--ori-ease),opacity .2s ease,transform .32s var(--ori-ease),padding .32s var(--ori-ease),margin .32s var(--ori-ease)!important}
.ori-expand-card:hover .ori-expand-card__action,.ori-expand-card:focus .ori-expand-card__action,.ori-expand-card:focus-within .ori-expand-card__action,.ori-expand-card.is-expanded .ori-expand-card__action{max-height:58px!important;min-height:36px!important;margin-top:18px!important;padding-top:4px!important;padding-bottom:4px!important;opacity:1!important;transform:none!important;pointer-events:auto!important}
@media(hover:none),(pointer:coarse){.ori-expand-card .ori-expand-card__action{max-height:0!important;min-height:0!important;margin-top:0!important;padding-top:0!important;padding-bottom:0!important;opacity:0!important;pointer-events:none!important}.ori-expand-card.is-expanded .ori-expand-card__action{max-height:58px!important;min-height:36px!important;margin-top:18px!important;padding-top:4px!important;padding-bottom:4px!important;opacity:1!important;pointer-events:auto!important}}
@media(max-width:560px){.ori-toggle{width:100%;grid-template-columns:1fr 1fr}.ori-toggle__label{min-width:0;padding:0 10px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.ori-toggle__track,.ori-expand-card,.ori-expand-card__action{transition:none!important;transform:none!important}}

/* Global dropdown menu component. Custom styled, keyboard-friendly, never browser-native. */
.ori-dropdown{position:relative;z-index:1}
.ori-dropdown[hidden]{display:none!important}
.ori-dropdown__trigger{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:0 14px;border:1px solid var(--ori-border);border-radius:999px;background:rgba(11,17,24,.92);box-shadow:0 14px 38px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.035);color:#fff;font:700 11px/1 var(--ori-font-body);letter-spacing:.03em;cursor:pointer;backdrop-filter:blur(16px);transition:border-color .22s,background .22s,box-shadow .22s,transform .22s}
.ori-dropdown__trigger:hover,.ori-dropdown__trigger:focus-visible,.ori-dropdown.is-open .ori-dropdown__trigger{border-color:rgba(136,59,210,.62);background:var(--ori-surface-2);outline:none;box-shadow:0 16px 42px rgba(0,0,0,.32),0 0 0 1px rgba(136,59,210,.08)}
.ori-dropdown__trigger:active{transform:scale(.98)}
.ori-dropdown__trigger-icon{display:grid;place-items:center;width:20px;height:20px;color:var(--ori-soft)}
.ori-dropdown__trigger-icon svg{display:block;width:19px;height:19px}
.ori-dropdown__menu{position:absolute;z-index:100;min-width:216px;padding:8px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(10,15,22,.97);box-shadow:0 24px 70px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.035);backdrop-filter:blur(22px);transform-origin:bottom left}
.ori-dropdown__menu[hidden]{display:none!important}
.ori-dropdown.is-open .ori-dropdown__menu{animation:ori-dropdown-in .2s var(--ori-ease) both}
.ori-dropdown__options{display:grid;gap:3px}
.ori-dropdown__option{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:42px;padding:0 12px;border:0;border-radius:13px;background:transparent;color:var(--ori-soft);font:600 12px/1 var(--ori-font-body);text-align:start;cursor:pointer;transition:background .18s,color .18s,box-shadow .18s}
.ori-dropdown__option:hover,.ori-dropdown__option:focus-visible{background:rgba(255,255,255,.055);color:#fff;outline:none}
.ori-dropdown__option.is-selected,.ori-dropdown__option[aria-checked="true"]{background:linear-gradient(120deg,rgba(210,60,59,.13),rgba(136,59,210,.18),rgba(59,208,210,.11));color:#fff;box-shadow:inset 0 0 0 1px rgba(136,59,210,.28)}
.ori-dropdown__option:disabled{opacity:.35;cursor:not-allowed}
.ori-dropdown__option-main{display:flex;align-items:baseline;gap:8px}.ori-dropdown__option-main strong{color:inherit;font:700 12px/1 var(--ori-font-body)}.ori-dropdown__option-main small{color:var(--ori-muted);font:500 10px/1 var(--ori-font-body)}
.ori-dropdown__option>i{display:grid;place-items:center;width:18px;height:18px;opacity:0;color:#fff}.ori-dropdown__option>i svg{width:14px;height:14px}.ori-dropdown__option.is-selected>i,.ori-dropdown__option[aria-checked="true"]>i{opacity:1}
@keyframes ori-dropdown-in{from{opacity:0;transform:translateY(7px) scale(.985)}to{opacity:1;transform:none}}

/* Floating currency access appears only while pricing is in the viewport. */
.ori-currency-float{position:fixed;z-index:470;left:20px;bottom:20px;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .2s ease,transform .25s var(--ori-ease)}
.ori-currency-float.is-visible{opacity:1;transform:none;pointer-events:auto}
.ori-currency-float .ori-dropdown__menu{left:0;bottom:calc(100% + 10px);width:228px;max-width:calc(100vw - 28px)}
.ori-currency-float__code{min-width:30px;text-align:start}
.ori-currency-dropdown__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px 10px;color:var(--ori-muted);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.ori-currency-dropdown__head strong{color:var(--ori-soft);font:700 9px/1 var(--ori-font-body);letter-spacing:.08em;text-transform:uppercase}.ori-currency-dropdown__head>span:last-child{color:#fff;letter-spacing:.04em}
.ori-currency-dropdown__meta{display:grid;gap:7px;margin-top:7px;padding:10px 10px 4px;border-top:1px solid var(--ori-border-soft);color:var(--ori-muted);font-size:8px;line-height:1.45}
.ori-currency-dropdown__meta a{color:var(--ori-soft);text-decoration:none}.ori-currency-dropdown__meta a:hover{text-decoration:underline}

/* Project-cover geometry hard lock: every public project cover uses 16:9. */
.ori-work-card figure,.ori-work-card--image-only img,.ori-project-detail__cover img{aspect-ratio:16/9!important;object-fit:cover!important}

@media(max-width:640px){
 .ori-currency-float{left:14px;bottom:14px}
 .ori-currency-float .ori-dropdown__trigger{min-width:48px;height:44px;padding:0 12px}
 .ori-currency-float .ori-dropdown__menu{width:min(228px,calc(100vw - 28px))}
}
@media(prefers-reduced-motion:reduce){.ori-dropdown__trigger,.ori-dropdown__option,.ori-currency-float{transition:none!important}.ori-dropdown.is-open .ori-dropdown__menu{animation:none!important}}

/* 0.9.50.4 canonical public label contract.
   Every public eyebrow/status label uses one solid Oriential surface. Route CSS may control placement only. */
.ori-eyebrow,
.ori-eyebrow.ori-launch-card__status,
.ori-eyebrow.ori-join-card__status,
.ori-eyebrow.ori-join-drawer__eyebrow,
.ori-eyebrow.ori-work-showcase__label{
 display:inline-flex!important;
 align-items:center!important;
 gap:10px!important;
 width:max-content!important;
 max-width:100%!important;
 min-height:34px!important;
 padding:7px 13px!important;
 border:1px solid rgba(255,255,255,.09)!important;
 border-radius:999px!important;
 background:#0A0F15!important;
 background-image:none!important;
 color:rgba(216,222,231,.64)!important;
 box-shadow:none!important;
 -webkit-backdrop-filter:none!important;
 backdrop-filter:none!important;
 font-family:var(--ori-font-body)!important;
 font-size:10px!important;
 font-weight:700!important;
 letter-spacing:.11em!important;
 line-height:1.25!important;
 text-transform:uppercase!important;
}
.ori-eyebrow.ori-launch-card__status,
.ori-eyebrow.ori-join-card__status{margin:0!important;white-space:nowrap}
.ori-eyebrow.ori-join-drawer__eyebrow{margin:0 0 10px!important}
.ori-work-showcase__label-wrap{display:flex;justify-content:center;width:100%;margin:0 auto 20px}
.ori-work-showcase__label-wrap .ori-work-showcase__label{margin:0!important}
.ori-eyebrow.ori-launch-card__status .ori-eyebrow__dot,
.ori-eyebrow.ori-join-card__status .ori-eyebrow__dot{
 flex:0 0 var(--ori-eyebrow-dot-size)!important;
 width:var(--ori-eyebrow-dot-size)!important;
 height:var(--ori-eyebrow-dot-size)!important;
 min-width:var(--ori-eyebrow-dot-size)!important;
 min-height:var(--ori-eyebrow-dot-size)!important;
 background:var(--ori-label-dot,var(--ori-purple))!important;
}
.ori-join-card__status:before{display:none!important}
.ori-launch-card__status>i:not(.ori-eyebrow__dot){display:none!important}
@media(max-width:640px){.ori-work-showcase__label-wrap{margin-bottom:14px}}

/* 0.9.50.8 status signal ring follows the semantic dot colour as one signal. */
.ori-eyebrow.ori-launch-card__status .ori-eyebrow__dot:after,
.ori-eyebrow.ori-join-card__status .ori-eyebrow__dot:after{border-color:var(--ori-label-dot,var(--ori-purple))!important}


/* 0.9.50.24 MOBILE HARD RULE: public content buttons remain content-sized. */
@media(max-width:700px){
 .ori-main .ori-button,.ori-main .ori-button--compact{width:max-content!important;max-width:100%!important;min-width:0;align-self:flex-start!important;justify-self:start!important;flex:0 1 auto!important}
 .ori-main .ori-hero__actions,.ori-main .ori-page-hero__actions,.ori-main .ori-profile__actions,.ori-main .ori-final-cta__action,.ori-main .ori-custom-section__action,.ori-main .ori-start-form__footer,.ori-main .ori-join-apply__footer{align-items:flex-start!important}
}
