.door{position:relative;z-index:10;display:flex;flex-direction:column}.door--vcentred{min-block-size:100svh;padding-block:var(--s-12) var(--s-10)}.door--vcentred,.door--vcentred-app{justify-content:center;gap:var(--s-5)}.door--vcentred-app{min-block-size:calc(100svh - var(--nav-h) - var(--pn-tabbar-h, 0px));padding-block:var(--s-12) var(--s-16)}.door--axis{align-items:center;text-align:center}.door--start{gap:var(--s-5);padding-block:var(--s-8) var(--s-16)}.door__brand{position:absolute;inset-block-start:var(--m-gutter-bar);inset-inline-start:var(--m-gutter-bar);font-family:var(--font-brand);font-size:var(--text-lg);line-height:1;color:var(--ink-12);text-decoration:none;display:inline-flex;align-items:center;min-block-size:44px}.door__brand-dot{color:var(--acc)}.door__eyebrow{font-family:var(--font-mono);font-size:var(--text-nano);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-7)}.door__title{margin:0;font-family:var(--font-brand);font-weight:400;font-size:clamp(var(--text-xl),5.6vw,var(--text-2xl));line-height:1.08;letter-spacing:var(--tracking-snug);color:var(--ink-12);text-wrap:balance}.door__title--editorial{font-family:var(--font-editorial);font-weight:300;line-height:1.12;text-wrap:pretty}.door__lead{margin:0;max-inline-size:46ch;font-size:var(--text-base);line-height:1.65;color:var(--ink-9);text-wrap:pretty}.door__note{margin:0;max-inline-size:42ch;font-size:var(--text-xs);line-height:1.55;color:var(--ink-7)}.door__note--start{text-align:start}.door__textlink{align-self:flex-start;display:inline-flex;align-items:center;min-block-size:44px;border:0;background:none;font-family:inherit;font-size:var(--text-xs);color:var(--ink-9);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.door__textlink:hover{color:var(--ink-12)}.door__action{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-block-size:56px;padding-inline:var(--s-8);border:0;border-radius:var(--r-md);background:var(--on);color:var(--onT);font-family:inherit;font-size:var(--text-base);font-weight:500;text-decoration:none;cursor:pointer;transition:transform var(--dur-base) var(--ease-out-soft),opacity var(--dur-base) var(--ease-out-soft)}.door__action:hover{transform:translateY(-1px)}.door__action:active{transform:translateY(1px)}.door__action:disabled{opacity:.5;cursor:not-allowed;transform:none}.door__action--pill{border-radius:var(--r-pill);min-block-size:54px}.door__action--block{inline-size:100%}.door__action--quiet{background:transparent;color:var(--ink-12);border:1px solid var(--rule)}@media (prefers-reduced-motion:reduce){.door__action:active,.door__action:hover{transform:none}}.door-course{display:flex;flex-direction:column;gap:var(--s-2_5);text-align:start}.door-course__pips{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2)}.door-course__pip{inline-size:22px;block-size:4px;border-radius:var(--r-pill);background:var(--ink-6);opacity:.45}.door-course__pip--done{background:var(--ink-12);opacity:1}.door-course__meta{font-size:var(--text-xs);color:var(--ink-7)}.door-field{display:flex;flex-direction:column;gap:var(--s-1_5);text-align:start}.door-field__label{font-family:var(--font-mono);font-size:var(--text-nano);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-7)}.door-field__input{inline-size:100%;min-block-size:52px;padding-inline:var(--s-4);border:1px solid var(--rule);border-radius:var(--r-md);background:var(--bg-elev);color:var(--ink-12);font-family:inherit;font-size:var(--text-base);transition:box-shadow var(--dur-base) var(--ease-out-soft)}.door-field__input::-moz-placeholder{color:var(--ink-6)}.door-field__input::placeholder{color:var(--ink-6)}.door-field__input:focus{outline:none;box-shadow:var(--shadow-focus-brand)}.door-oauth{display:flex;align-items:center;justify-content:center;gap:var(--s-3);inline-size:100%;min-block-size:52px;border:1px solid var(--rule);border-radius:var(--r-md);background:var(--bg-elev);color:var(--ink-12);font-family:inherit;font-size:var(--text-base);cursor:pointer;transition:background var(--dur-base) var(--ease-out-soft)}.door-oauth:hover{background:var(--paper-2)}.door-oauth:disabled{opacity:.5;cursor:not-allowed}.door-or{display:flex;align-items:center;gap:var(--s-4);font-family:var(--font-mono);font-size:var(--text-nano);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-7)}.door-or:after,.door-or:before{content:"";flex:1 1 auto;block-size:1px;background:var(--rule)}.door-alert{margin:0;font-size:var(--text-sm);line-height:1.5;color:var(--semantic-error)}.door-org{display:flex;align-items:center;justify-content:center;inline-size:56px;block-size:56px;border-radius:var(--r-lg);background:var(--paper-2);border:1px solid var(--rule);font-family:var(--font-brand);font-size:var(--text-lg);line-height:1;color:var(--ink-12)}.door-kit{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-10);align-items:start}@media (min-width:900px){.door-kit{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:var(--s-8)}}.door-kit__rail{display:flex;flex-direction:column;gap:var(--s-6)}.door-kit__section{display:flex;flex-direction:column;gap:var(--s-2_5)}.door-kit__label{font-family:var(--font-mono);font-size:var(--text-nano);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-7)}.door-kit__video{display:block;inline-size:100%;border-radius:var(--r-lg);border:1px solid var(--rule);overflow:hidden;background:var(--paper-2)}.door-kit__caption{display:flex;align-items:center;gap:var(--s-2);padding:var(--s-3) var(--s-4);border-block-start:1px solid var(--rule);font-family:var(--font-mono);font-size:var(--text-nano);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-7)}.door-kit__swatch{inline-size:9px;block-size:9px;border-radius:var(--r-xs);background:var(--blk-cyan);flex:0 0 auto}.door-kit__quote{margin:0;font-family:var(--font-editorial);font-weight:300;font-size:var(--text-md);line-height:1.55;color:var(--ink-12)}.door-kit__row{display:flex;align-items:baseline;gap:var(--s-3);padding:var(--s-3) var(--s-4);border:1px solid var(--rule);border-radius:var(--r-md);font-size:var(--text-xs);line-height:1.5;color:var(--ink-9)}.door-kit__num{font-family:var(--font-mono);font-size:var(--text-nano);color:var(--ink-7);flex:0 0 auto}.door-kit__table{display:flex;flex-direction:column;border:1px solid var(--rule);border-radius:var(--r-lg);overflow:hidden}.door-kit__trow{display:flex;align-items:baseline;gap:var(--s-4);padding:var(--s-3) var(--s-4);font-size:var(--text-xs);line-height:1.5;color:var(--ink-9)}.door-kit__trow+.door-kit__trow{border-block-start:1px solid var(--rule-faint)}.door-kit__day{flex:0 0 48px;font-family:var(--font-mono);font-size:var(--text-nano);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-7)}.door-kit__form-title{margin:0;font-family:var(--font-editorial);font-weight:300;font-size:var(--text-lg);line-height:1.2;letter-spacing:var(--tracking-snug);color:var(--ink-12)}.door-kit__form-sub{margin:0;font-size:var(--text-xs);line-height:1.5;color:var(--ink-7)}.door-form{display:flex;flex-direction:column;gap:var(--s-5);text-align:start}.door-form__styles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-2_5)}@media (max-width:400px){.door-form__styles{grid-template-columns:minmax(0,1fr)}}.door-form__style{display:flex;flex-direction:column;gap:var(--s-0_5);min-block-size:44px;padding:var(--s-4);border:1px solid var(--rule);border-radius:var(--r-md);background:var(--bg-elev);text-align:start;cursor:pointer;transition:transform var(--dur-base) var(--ease-out-soft),border-color var(--dur-base) var(--ease-out-soft)}.door-form__style:hover{transform:translateY(-1px)}.door-form__style[aria-pressed=true]{border-color:var(--ink-12);background:var(--paper-2)}.door-form__style-label{font-size:var(--text-sm);font-weight:500;color:var(--ink-12)}.door-form__style-sub{font-size:var(--text-xs);color:var(--ink-7)}@media (prefers-reduced-motion:reduce){.door-form__style:hover{transform:none}}.door-skeleton{display:block;border-radius:var(--r-md);background:var(--paper-2)}@media (prefers-reduced-motion:no-preference){.door-skeleton{animation:door-pulse 1.6s ease-in-out infinite}}@keyframes door-pulse{0%,to{opacity:1}50%{opacity:.55}}@media (max-width:767px){.door--vcentred-app{padding-block:var(--s-8) var(--s-10)}.door--start{padding-block:var(--s-6) var(--s-10)}}[lang=ar] .door-kit__form-title,[lang=ar] .door__title,[lang=ar] .door__title--editorial{line-height:var(--ar-leading-display)}