/* Canonical button: flexible text width, no fake left gutter, no icon overlap. */
.ori-button{--ori-button-height:48px;--ori-button-icon-size:38px;--ori-button-font-size:12px;--ori-button-gap:12px;--ori-button-padding:5px;--ori-button-text-pad:22px;position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:var(--ori-button-gap);width:max-content;max-width:100%;min-width:0;min-height:var(--ori-button-height);padding:4px var(--ori-button-padding) 4px var(--ori-button-text-pad);border:0;border-radius:999px;color:#fff;font-family:var(--ori-font-headline);font-size:var(--ori-button-font-size);font-weight:400;font-synthesis:none;line-height:1.35;white-space:nowrap;text-align:center;cursor:pointer;overflow:hidden;background-clip:border-box;vertical-align:middle;transition:background .24s,transform .2s var(--ori-ease),box-shadow .24s}.ori-button:before{content:"";position:absolute;z-index:-1;inset:-35% -50%;background:linear-gradient(105deg,transparent 34%,rgba(255,255,255,.22) 47%,transparent 60%);transform:translateX(-56%);transition:transform .55s var(--ori-ease);pointer-events:none}.ori-button:hover:before,.ori-button:focus-visible:before{transform:translateX(56%)}.ori-button__label{display:block;flex:0 1 auto;min-width:0;text-align:center;overflow-wrap:break-word}.ori-button__icon{position:relative;display:grid;place-items:center;flex:0 0 var(--ori-button-icon-size);width:var(--ori-button-icon-size);height:var(--ori-button-icon-size);border-radius:50%;overflow:visible;transition:background .24s,transform .24s var(--ori-ease)}.ori-button__icon svg{display:block;width:17px;height:17px;fill:currentColor}.ori-button__signal{position:relative;display:block;width:7px;height:7px;border-radius:50%;background:#fff}.ori-button__signal:after{content:"";position:absolute;inset:-5px;border:1px solid rgba(255,255,255,.55);border-radius:50%;animation:ori-signal-wave 2.2s ease-out infinite}.ori-button__icon:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.24);border-radius:50%;animation:ori-icon-wave 2.2s ease-out infinite;pointer-events:none}.ori-button:hover .ori-button__signal:after,.ori-button:focus-visible .ori-button__signal:after,.ori-button:hover .ori-button__icon:after,.ori-button:focus-visible .ori-button__icon:after{animation-duration:1.25s}.ori-button:hover{transform:translateY(-1px)}.ori-button:hover .ori-button__icon,.ori-button:focus-visible .ori-button__icon{transform:scale(1.025)}.ori-button:active{transform:translateY(0) scale(.985)}@keyframes ori-signal-wave{0%{transform:scale(.55);opacity:.8}75%,100%{transform:scale(1.8);opacity:0}}@keyframes ori-icon-wave{0%{transform:scale(.88);opacity:.7}75%,100%{transform:scale(1.08);opacity:0}}.ori-button--primary{background:var(--ori-gradient);background-size:175% 175%;color:#fff;box-shadow:0 12px 34px rgba(136,59,210,.17);animation:ori-button-gradient 7.5s ease-in-out infinite}.ori-button--primary .ori-button__icon{background:rgba(6,9,13,.88);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.ori-button--secondary{background:var(--ori-surface-1);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}.ori-button--secondary .ori-button__icon{background:var(--ori-surface-3);box-shadow:inset 0 1px 0 rgba(255,255,255,.07)}.ori-button--secondary:hover{background:var(--ori-surface-2);box-shadow:inset 0 0 0 1px rgba(255,255,255,.20),0 12px 34px rgba(0,0,0,.18)}@keyframes ori-button-gradient{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}@media(max-width:560px){.ori-button{white-space:normal;--ori-button-text-pad:20px}.ori-button__label{white-space:normal}}@media(prefers-reduced-motion:reduce){.ori-button,.ori-button:before,.ori-button__icon{transition:none}.ori-button__signal:after,.ori-button__icon:after{animation:none;opacity:.55}.ori-button--primary{animation:none}}

.ori-section{padding:82px 0}.ori-section__head{max-width:820px;margin-bottom:34px}.ori-section__head h2,.ori-page__header h1,.ori-final-cta h2{margin:0;color:#fff;font-family:var(--ori-font-headline);font-size:var(--ori-section-size);line-height:1.12;letter-spacing:-.04em;overflow-wrap:break-word}.ori-section__head p,.ori-page__header p{max-width:650px;color:var(--ori-muted);font-size:15px;line-height:1.7}.ori-section__head--split{max-width:none;display:flex;align-items:end;justify-content:space-between;gap:24px}.ori-section__head--split>div{min-width:0}
.ori-service-list{padding:8px;border-radius:26px}.ori-service-row{position:relative;display:grid;grid-template-columns:30px 34px minmax(0,190px) minmax(0,1fr) 20px;align-items:center;gap:18px;min-height:94px;padding:18px;border-radius:18px;transition:background .24s}.ori-service-row+.ori-service-row{border-block-start:1px solid rgba(255,255,255,.055)}.ori-service-row:hover{background:var(--ori-surface-2)}.ori-service-row__index{color:rgba(255,255,255,.38);font-size:11px}.ori-service-row__icon{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--ori-surface-2);color:rgba(255,255,255,.70);transition:background .24s,color .24s}.ori-service-row__icon svg{width:17px;height:17px;fill:currentColor}.ori-service-row:hover .ori-service-row__icon{background:rgba(136,59,210,.16);color:#fff}.ori-service-row strong{color:#fff;font-family:var(--ori-font-headline);font-size:18px;line-height:1.3}.ori-service-row p{min-width:0;max-width:560px;margin:0;color:var(--ori-muted);font-size:13px;line-height:1.6}.ori-service-row .ori-arrow{justify-self:end;color:rgba(255,255,255,.45)}.ori-service-row:hover .ori-arrow{color:#fff}.ori-service-row--static:hover{background:transparent}.ori-editor-cta{padding:36px;border-radius:24px}
@media(max-width:850px){.ori-service-row{grid-template-columns:28px 34px minmax(0,1fr) 20px;gap:12px;padding:18px 14px}.ori-service-row p{grid-column:3/5}.ori-service-row .ori-arrow{grid-column:4;grid-row:1}.ori-service-row strong{grid-column:3;grid-row:1}}
@media(max-width:640px){.ori-section{padding:62px 0}.ori-section__head{margin-bottom:26px}.ori-section__head--split{align-items:stretch;flex-direction:column}.ori-section__head--split .ori-button{width:100%}.ori-service-row{grid-template-columns:24px 30px minmax(0,1fr) 18px;gap:10px;padding:18px 10px;min-height:0}.ori-service-row__icon{width:30px;height:30px}.ori-service-row strong{font-size:16px}.ori-service-row p{font-size:13px;overflow-wrap:break-word}}
.ori-button{direction:ltr}.ori-dir-rtl .ori-button__label{direction:rtl}

/* Card/service click identity uses the button circle, not arrows. */
.ori-section__title-line{display:flex;align-items:center;gap:14px}.ori-service-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:0}.ori-service-card{display:flex;flex-direction:column;gap:14px;min-height:238px;padding:24px;border-radius:24px;color:inherit;transition:background .22s,transform .22s var(--ori-ease),border-color .22s}.ori-service-card strong{color:#fff;font-family:var(--ori-font-headline);font-size:20px;font-weight:700}.ori-service-card p{margin:0;color:var(--ori-muted);font-size:14px;line-height:1.6}.ori-service-card .ori-card-action{margin-top:auto}.ori-card-action{display:inline-flex;align-items:center;gap:10px;color:#fff;font-size:12px;font-weight:700;line-height:1}.ori-card-action i{position:relative;display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--ori-surface-3);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}.ori-card-action i:before{content:"";width:6px;height:6px;border-radius:50%;background:#fff}.ori-card-action i:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.24);border-radius:50%;animation:ori-icon-wave 2.2s ease-out infinite}.ori-arrow,.ori-work__arrow{display:none!important}.ori-start-form__footer{align-items:center}.ori-start-form__footer .ori-button{flex:0 0 auto}.ori-form-mount{overflow:visible}.ori-field input,.ori-field textarea,.ori-field select{background:var(--ori-surface-1)}@media(max-width:1000px){.ori-service-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.ori-service-cards{grid-template-columns:1fr}.ori-service-card{min-height:0}.ori-start-form__footer .ori-button{width:100%;justify-content:center}}

/* Shared expand card. Apply only where a compact card reveals an action.
   Service and pricing layouts configure dimensions, never duplicate the interaction. */
.ori-expand-card{min-height:var(--ori-expand-min-height,112px);overflow:hidden;transition:min-height .32s var(--ori-ease),transform .26s var(--ori-ease),background .26s var(--ori-ease),box-shadow .26s var(--ori-ease),border-color .26s var(--ori-ease)!important}
.ori-expand-card:hover,.ori-expand-card:focus-within{min-height:var(--ori-expand-hover-height,172px);transform:translateY(-5px)!important;background:linear-gradient(var(--ori-surface-1),var(--ori-surface-1)) padding-box,var(--ori-gradient) border-box;border-color:transparent;box-shadow:0 22px 58px rgba(136,59,210,.18),0 0 34px rgba(59,208,210,.08)}
.ori-expand-card:before{content:none}
.ori-expand-card__action{margin-top:var(--ori-expand-action-gap,8px);max-width:100%;min-height:36px;transition:max-height .34s var(--ori-ease),opacity .22s ease,transform .34s var(--ori-ease),padding .34s var(--ori-ease),margin .34s var(--ori-ease)!important}
@media(hover:hover) and (pointer:fine){
 .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;transform:translateY(8px)!important;pointer-events:none!important;overflow:hidden!important}
 .ori-expand-card:hover .ori-expand-card__action,.ori-expand-card:focus-within .ori-expand-card__action{max-height:var(--ori-expand-action-max,44px)!important;min-height:36px!important;margin-top:var(--ori-expand-action-gap,8px)!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__action{margin-top:var(--ori-expand-action-gap,8px)!important}}
@media(prefers-reduced-motion:reduce){.ori-expand-card,.ori-expand-card:hover,.ori-expand-card:focus-within,.ori-expand-card__action{transition:none!important;transform:none!important}}

/* GLOBAL TOGGLE - canonical binary switch component. */
.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}
@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}}

/* GLOBAL EXPANDABLE ACTION CARD - exact shared interaction for every card with a CTA. */
.ori-expand-card{min-height:0!important;height:auto;overflow:hidden;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__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__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(prefers-reduced-motion:reduce){.ori-toggle__track,.ori-expand-card,.ori-expand-card__action{transition:none!important}}

/* 0.9.16 GLOBAL LABEL: one dark, single-border pill everywhere. */
.ori-label,.ori-chip{display:inline-flex;align-items:center;min-height:28px;padding:6px 10px;border:1px solid #202935!important;border-radius:999px;background:#090E14!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;color:var(--ori-soft);font-size:10px;font-weight:650;line-height:1.2;letter-spacing:0;text-transform:none}
.ori-label:before,.ori-label:after,.ori-chip:before,.ori-chip:after{content:none!important}
