/* Student services and staff workspace — original WIDE palette. */
[hidden]{display:none!important}.panel{padding:34px;border:1px solid #ddd9e5;border-radius:22px;background:#ffffffed;box-shadow:0 12px 45px #241a3510}.panel h2{font-size:clamp(1.65rem,3vw,2.45rem);line-height:1.2}.panel h3{font-size:1.2rem;margin:0 0 12px}.panel p{color:#60586d}.panel .field{margin-bottom:20px}.panel .form-grid .field{margin-bottom:0}.panel .form-grid{margin:24px 0}.wide-button{width:100%;justify-content:center}.button-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.button:disabled,button:disabled{cursor:not-allowed;opacity:.56}.button-row .button{font-size:.85rem}.small-note{line-height:1.7}.portal-status{padding:14px 18px;border-radius:12px;border:1px solid #ddd5ed;background:#f2edf8;line-height:1.7;color:#433452;font-size:.9rem;margin:0 0 22px;overflow-wrap:anywhere}.portal-status.error{background:#fff0e9;border-color:#eab294;color:#863710}.portal-status.success{background:#edf6ef;border-color:#a3c3ac;color:#2e5739}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.service-card{position:relative;padding:40px;border:1px solid #d9d2e4;border-radius:26px;background:linear-gradient(150deg,#ffffff,#f1edf7);overflow:hidden}.service-card.lavender{background:radial-gradient(ellipse at top right,#e26a221a,transparent 65%),linear-gradient(135deg,#e7dff8,#d5c8f2)}.service-number{display:block;font-size:.72rem;font-weight:700;letter-spacing:.08em;color:#5e4679;margin-bottom:28px}.service-card>.icon{width:42px;height:42px;margin-bottom:25px;color:#6b4a99}.service-card h2{font-size:clamp(1.9rem,3vw,2.7rem);line-height:1.16}.service-card p{max-width:520px;color:#5c5269;line-height:1.8}.service-card .field{margin:25px 0 18px}.service-card .button{margin-top:12px}.services-bottom{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}.services-bottom>a{display:flex;gap:15px;align-items:center;padding:24px;background:#fff;border:1px solid #e1dce8;border-radius:17px;text-decoration:none;transition:transform .2s,border-color .2s}.services-bottom>a:hover{transform:translateY(-3px);border-color:#e26a22}.services-bottom>a>.icon{flex:none;color:#ba5118}.services-bottom span{font-size:.8rem;color:#716679}.services-bottom strong{display:block;font-size:.95rem;margin-bottom:5px;color:#24192f}.services-bottom>a>.icon:last-child{width:18px;margin-left:auto}.estimate-layout{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start}.estimate-layout>div:first-child>p{color:#655a70;max-width:490px;line-height:1.85}.estimate-layout h2{font-size:clamp(2rem,3.6vw,3.2rem)}.estimate-panel>.pill{margin-bottom:26px;background:#ebe4f7;color:#49345f}.estimate-panel{background:radial-gradient(ellipse at 100% 0,#ab96ff1c,transparent 65%),#fff}.steps-list{margin:30px 0 34px}.steps-list>div{display:flex;gap:18px;align-items:center;padding:13px 0;border-bottom:1px solid #e1dbe7}.steps-list span{font-weight:700;color:#b95926}.steps-list p{margin:0;font-size:.9rem;line-height:1.7}.fee-breakdown{padding:20px 0;margin-top:12px}.fee-breakdown>p{display:flex;justify-content:space-between;gap:15px;font-size:.87rem}.fee-breakdown>div{border-top:1px solid #ddd5e6;padding:22px 0 10px;display:grid;gap:8px}.fee-breakdown>div>span{color:#665772;font-size:.85rem}.fee-breakdown>div>strong{font-size:clamp(2rem,3vw,2.8rem);letter-spacing:-.05em;color:#20162b}.fee-table-panel{margin-top:60px}.fee-table-panel h2{font-size:1.6rem}.table-scroll{overflow:auto;max-width:100%}table{border-collapse:collapse;width:100%;text-align:left;font-size:.87rem}th,td{padding:15px 14px;border-bottom:1px solid #e5deec}th{color:#5b4675;background:#f4f0f9;font-size:.8rem}td{vertical-align:top}.payment-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:30px;align-items:start}.payment-summary{display:grid;gap:25px;position:sticky;top:120px}.dark-panel{background:radial-gradient(ellipse at 100% 0,#ab96ff32,transparent 65%),linear-gradient(138deg,#20172c,#1c233b);color:#fff;border:1px solid #3e2e51}.dark-panel p,.dark-panel .fee-breakdown p{color:#d0c6dc}.dark-panel .eyebrow{color:#eead87}.dark-panel h2{font-size:clamp(2rem,3.4vw,3rem);margin:24px 0 8px;letter-spacing:-.04em}.dark-panel .pill{color:#f7e5db;background:#ffffff15}.dark-panel .fee-breakdown{border-top:1px solid #ffffff22;margin-top:24px}.plain-list{padding-left:20px;color:#63556f;line-height:1.8;font-size:.9rem}.plain-list li+li{margin-top:12px}.narrow{max-width:780px}.receipt-details{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px;margin:25px 0}.receipt-details>div{padding:15px 0;border-bottom:1px solid #e4dce9}.receipt-details dt{font-size:.8rem;color:#6e5d7d;margin-bottom:6px}.receipt-details dd{margin:0;font-size:1rem;overflow-wrap:anywhere}.status-badge{display:inline-block;font-size:.74rem;line-height:1.3;padding:7px 10px;border-radius:7px;color:#684a20;background:#f6e8d5;font-weight:700;white-space:nowrap}.status-badge.paid,.status-badge.active{color:#2f623f;background:#e3f0e6}.status-badge.failed,.status-badge.disabled{color:#864024;background:#fae7dd}.status-badge.review{color:#5e3b84;background:#ede1f7}.status-badge.sandbox{background:#e8e1f6;color:#533b7b}
.portal-intro{padding:64px 0 52px;color:#fff;background:radial-gradient(ellipse at 95% 10%,#ab96ff30,transparent 45%),radial-gradient(ellipse at 35% 100%,#e26a221e,transparent 60%),linear-gradient(135deg,#1e1729,#202d4b);position:relative;overflow:hidden}.portal-intro:after{content:"";position:absolute;border:1px solid #ab96ff25;width:500px;height:500px;border-radius:40%;right:8%;top:-220px;transform:rotate(25deg);pointer-events:none}.portal-intro h1{font-size:clamp(2.2rem,4vw,3.5rem);line-height:1.15;margin:15px 0}.portal-intro p:last-child{color:#cfc3db;font-size:.94rem}.portal-intro .eyebrow{color:#efac85}.portal-section{padding-top:44px}.auth-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:start;max-width:1040px;margin:20px auto 50px}.auth-story{padding:25px 0}.auth-story>.pill{background:#e8e0f4;color:#614779;margin-bottom:24px}.auth-story h2{font-size:clamp(2rem,3.5vw,3.1rem);line-height:1.2}.auth-story>p{line-height:1.8;color:#6b5c78}.auth-feature{display:flex;gap:20px;margin:27px 0;align-items:start}.auth-feature>span{color:#c2632e;font-size:.85rem;padding-top:5px}.auth-feature h3{font-size:1rem;margin:0 0 7px}.auth-feature p{font-size:.85rem;line-height:1.7;margin:0;color:#6c5c79}.auth-form{padding:38px}.auth-form h2{margin-bottom:30px}.auth-form .small-note{margin-top:24px}.workspace-bar{display:flex;justify-content:space-between;align-items:center;margin:0 0 32px;gap:20px}.workspace-bar h2{font-size:clamp(1.4rem,3vw,2rem);margin:7px 0}.workspace-bar p{margin:0;font-size:.84rem;color:#786587}.workspace{display:grid;grid-template-columns:205px minmax(0,1fr);gap:28px;align-items:start}.workspace-nav{display:grid;gap:6px;position:sticky;top:115px}.workspace-nav button{border:1px solid transparent;background:transparent;display:flex;gap:12px;align-items:center;padding:14px 15px;border-radius:12px;text-align:left;cursor:pointer;font-size:.9rem;color:#705f7f}.workspace-nav button span{font-size:.83rem}.workspace-nav button.selected{background:#261c35;color:#fff;box-shadow:0 8px 18px #25193416}.workspace-nav button:hover:not(.selected){background:#ebe4f3;color:#362445}.workspace-content{min-width:0}.workspace-content .panel{padding:26px;box-shadow:0 7px 25px #25163306;border-radius:18px}.workspace-content section>.panel+.panel{margin-top:22px}.workspace-content h3{font-size:1.12rem}.stat-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}.stat-row>div{padding:23px;background:radial-gradient(ellipse at 100% 0,#ab96ff12,transparent 80%),#fff;border:1px solid #e0d8e8;border-radius:16px}.stat-row>div:first-child{background:radial-gradient(ellipse at right top,#ab96ff40,transparent 75%),#261c35;color:#fff;border-color:#352842}.stat-row span{font-size:.76rem;display:block;margin-bottom:8px;opacity:.75}.stat-row strong{font-size:2.05rem;font-weight:700}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.panel-heading h3{margin-bottom:0}.panel-heading p:not(.eyebrow){font-size:.84rem;margin-top:12px}.panel-heading .eyebrow{font-size:.63rem;margin-bottom:8px;color:#ad5a2c}.document-filters{display:grid;grid-template-columns:1.7fr 1fr;gap:16px;margin:25px 0 6px}.document-filters .field label{font-size:.75rem}.document-list{min-height:160px}.document-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:19px 0;border-bottom:1px solid #e8e1ed}.doc-icon{width:44px;height:51px;border:1px solid #d8cbea;border-radius:9px;background:#eee6f7;color:#694585;display:grid;place-items:center;font-size:.67rem;font-weight:700;letter-spacing:.03em}.doc-icon.intake{background:#faede4;border-color:#ecc9b0;color:#a55227}.document-row h4{font-size:.87rem;margin:0 0 6px;overflow-wrap:anywhere}.document-row p{font-size:.73rem;margin:0;line-height:1.8;color:#7c6c89}.doc-tags{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.doc-tags .status-badge{font-size:.65rem;padding:4px 7px}.document-row .button{font-size:.75rem;padding:10px 13px}.pagination{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:24px}.pagination span{font-size:.75rem;color:#7a6b87}.pagination .button{font-size:.75rem;padding:10px 13px}.empty-state{text-align:center;padding:40px 10px;color:#7a6c87}.empty-state strong{display:block;color:#372547;margin-bottom:8px}.empty-state p{font-size:.85rem;line-height:1.8}.upload-drop{display:flex;align-items:center;flex-direction:column;gap:9px;border:1.5px dashed #bdacd3;border-radius:16px;background:radial-gradient(ellipse at right top,#e26a220b,transparent 60%),#f7f3fb;padding:28px;text-align:center;cursor:pointer;margin:24px 0;font-size:.87rem;color:#574267}.upload-drop input{max-width:100%;margin-top:12px;font-size:.8rem}.upload-drop .upload-symbol{font-size:1.8rem;color:#b05d30}.upload-drop>span:last-of-type{font-size:.74rem;color:#7c6a8b}.upload-drop.dragover{background:#e9e0f5;border-color:#8a6bae}.account-row{padding:22px 0;border-bottom:1px solid #e3dce9}.account-row-top{display:flex;justify-content:space-between;gap:15px;margin-bottom:18px}.account-row h4{margin:0 0 6px;font-size:.9rem}.account-row p{font-size:.77rem;margin:0;overflow-wrap:anywhere}.account-controls{display:flex;gap:15px;align-items:end;flex-wrap:wrap}.account-controls .field{margin:0;flex:1;min-width:130px}.account-controls label{font-size:.74rem}.account-controls select{font-size:.8rem;padding:9px 12px}.account-controls .checkbox-label{padding-bottom:10px}.account-controls .button{font-size:.72rem;padding:10px 12px}.account-controls .checkbox-label span{font-size:.76rem}.payment-row{padding:20px 0;border-bottom:1px solid #e7dfec;display:flex;justify-content:space-between;gap:16px;align-items:center}.payment-row h4{font-size:.83rem;margin:0 0 10px;overflow-wrap:anywhere}.payment-row p{font-size:.76rem;margin:5px 0;line-height:1.6;overflow-wrap:anywhere}.payment-row aside{text-align:right;display:grid;justify-items:end;gap:8px}.payment-row aside strong{font-size:.84rem;white-space:nowrap}.payment-row .button{font-size:.7rem;padding:9px 12px}.activity-row{padding:15px 0;border-bottom:1px solid #e5dce9;display:flex;gap:20px;justify-content:space-between}.activity-row p{margin:5px 0;font-size:.78rem;overflow-wrap:anywhere}.activity-row time{font-size:.69rem;color:#7f6b8e;white-space:nowrap}.document-dialog{width:min(760px,calc(100% - 28px));max-height:90dvh;padding:32px;border:1px solid #d8cce4;border-radius:22px;background:#faf8fd;color:#2a1a38;overflow:auto}.document-dialog::backdrop{background:#171020b8;backdrop-filter:blur(5px)}.dialog-top{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:18px}.icon-button{border:1px solid #ddd2e8;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;font-size:1.4rem;cursor:pointer;background:#fff}.document-dialog h2{font-size:1.6rem;line-height:1.35;overflow-wrap:anywhere;margin-top:0}.document-dialog .record-meta{margin:22px 0}.document-dialog .panel{padding:24px;margin:22px 0 0;border-radius:15px;box-shadow:none}.document-dialog details{margin-top:22px;border:1px solid #dcd0e8;border-radius:12px;padding:18px;background:#fff}.document-dialog summary{cursor:pointer;font-size:.87rem;font-weight:700}.document-dialog details>form{margin-top:20px}.document-dialog .field{margin:14px 0}.document-dialog .form-grid{gap:14px}.document-dialog .form-grid .field{margin:0}.document-dialog .field>label{font-size:.75rem}.document-dialog .button{font-size:.8rem}.qr-area{display:grid;grid-template-columns:176px minmax(0,1fr);gap:25px;align-items:center;margin-top:18px}.qr-area svg{width:176px;height:176px;display:block;border-radius:8px;background:#fff}.qr-copy input{font-size:.75rem}.qr-copy>p{font-size:.8rem;line-height:1.7}.qr-copy .button-row{margin-top:13px}.qr-controls{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.qr-controls button{border:0;background:transparent;text-decoration:underline;cursor:pointer;font-size:.75rem;color:#745589;padding:8px 0}.danger-link{border:0;color:#a54126;background:transparent;font-size:.78rem;margin-top:24px;cursor:pointer;text-decoration:underline}.record-header{display:flex;align-items:center;gap:20px;max-width:1180px;margin:0 auto;padding:25px 30px;border-bottom:1px solid #ddd4e7;font-size:.9rem}.record-header>a:first-child{flex:none}.record-header>a:last-child{margin-left:auto;font-size:.8rem}.record-header img{width:64px;height:64px;object-fit:contain}.record-header small{color:#776486}.record-wrap{max-width:1100px;padding-top:45px;padding-bottom:45px}.record-wrap h1{font-size:clamp(1.6rem,3.5vw,2.55rem);line-height:1.3;overflow-wrap:anywhere}.record-wrap .panel>p{font-size:.9rem;line-height:1.8}.record-meta{display:flex;flex-wrap:wrap;gap:20px 38px;margin:25px 0}.record-meta span{font-size:.87rem;overflow-wrap:anywhere}.record-meta small{display:block;text-transform:uppercase;font-size:.62rem;letter-spacing:.07em;color:#826990;margin-bottom:6px}.transcript-frame{display:block;width:100%;height:78vh;min-height:400px;border:1px solid #dfd3e9;border-radius:14px;margin-top:25px;background:#eae4f1}.record-foot{text-align:center;padding:25px;font-size:.75rem;color:#7c6988}#invite-url{margin:5px 0 14px;font-size:.8rem}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #7c58be;outline-offset:3px}.portal-heading>p{font-size:.87rem;line-height:1.8}
@media(max-width:1200px){.workspace{grid-template-columns:175px minmax(0,1fr);gap:22px}.workspace-nav button{padding:13px 10px}.workspace-nav button span{font-size:.76rem}.main-nav{gap:15px}.service-card{padding:32px}.services-bottom{gap:12px}.services-bottom>a{padding:19px}.services-bottom>a>.icon:first-child{display:none}}
@media(max-width:1020px){.workspace{grid-template-columns:1fr}.workspace-nav{position:static;display:flex;overflow-x:auto;padding-bottom:6px;gap:8px}.workspace-nav button{white-space:nowrap;padding:13px 17px}.workspace-nav button span{font-size:.82rem}.payment-layout{grid-template-columns:1.2fr 1fr;gap:20px}.payment-summary{position:static}.payment-layout .panel{padding:26px}.auth-layout{gap:5%}.panel{padding:28px}.service-grid{gap:20px}.services-bottom>a{padding:20px 16px}.services-bottom strong{font-size:.83rem}}
@media(max-width:760px){.service-grid,.estimate-layout,.payment-layout,.auth-layout{grid-template-columns:1fr}.service-card{padding:29px}.service-card h2{font-size:2.1rem}.services-bottom{grid-template-columns:1fr}.services-bottom>a>.icon:first-child{display:block}.services-bottom strong{font-size:.9rem}.estimate-layout{gap:32px}.steps-list{margin:20px 0}.fee-table-panel{margin-top:32px}.estimate-panel{padding:27px}.estimate-panel .form-grid{grid-template-columns:1fr}.payment-layout{gap:24px}.payment-layout .panel{padding:25px}.auth-layout{gap:20px;margin-top:0}.auth-story{padding:10px 0}.auth-feature{margin:20px 0}.auth-form{padding:28px}.portal-intro{padding:42px 0 36px}.portal-intro h1{font-size:2.2rem}.portal-intro:after{right:-70%;opacity:.5}.portal-section{padding-top:26px}.workspace-bar{margin-bottom:23px}.workspace-bar h2{font-size:1.4rem}.workspace-bar .eyebrow{font-size:.6rem}.workspace-bar .button{font-size:.72rem;padding:10px 14px}.workspace-nav button{padding:12px 14px}.stat-row{gap:10px;margin-bottom:20px}.stat-row>div{padding:16px 12px}.stat-row span{font-size:.65rem}.stat-row strong{font-size:1.65rem}.workspace-content .panel{padding:21px 18px}.document-filters{grid-template-columns:1fr;gap:0;margin-bottom:0}.document-row{gap:11px}.doc-icon{width:33px;height:42px;font-size:.53rem}.document-row h4{font-size:.78rem}.document-row p{font-size:.65rem}.document-row .button{font-size:.68rem;padding:9px 10px}.panel-heading .button{font-size:.7rem;padding:10px 13px;white-space:nowrap}.panel-heading h3{font-size:1rem}.panel-heading .eyebrow{font-size:.55rem}.workspace-content .panel>.form-grid{grid-template-columns:1fr}.document-dialog{padding:23px 19px}.document-dialog .panel{padding:20px 17px}.document-dialog h2{font-size:1.25rem}.qr-area{grid-template-columns:1fr;gap:15px}.qr-area svg{width:180px;height:180px;margin:auto}.qr-controls{gap:15px}.document-dialog .form-grid{grid-template-columns:1fr}.record-header{padding:18px;gap:12px;font-size:.75rem}.record-header img{width:46px;height:46px}.record-header>a:last-child{font-size:.67rem}.record-wrap{padding-top:25px}.record-wrap .panel{padding:25px}.record-meta{gap:18px}.record-meta span{font-size:.75rem}.record-wrap .button-row .button{font-size:.78rem}.transcript-frame{height:65vh}.activity-row{flex-direction:column;gap:5px}.payment-row{align-items:start;gap:12px}.payment-row h4{font-size:.7rem}.payment-row p{font-size:.7rem}.payment-row aside strong{font-size:.72rem}.payment-row .status-badge{font-size:.6rem}.receipt-details{grid-template-columns:1fr}.services-bottom{margin-top:20px}.record-wrap .panel>p{font-size:.8rem}}
@media(prefers-reduced-motion:reduce){.services-bottom>a{transition:none}}
@media print{.site-header,.topbar,.site-footer,.floating-call,.page-hero,.portal-intro,.workspace-nav,.button-row,.record-header>a:last-child{display:none!important}.panel{border:0;box-shadow:none;background:white;color:black}.receipt-details{grid-template-columns:1fr 1fr}body{background:white!important}.section{padding:10px 0}}
