:root{color-scheme:light;--ink:#10231d;--forest:#173c31;--moss:#31594a;--sage:#7c9a86;--mist:#f5f6f3;--stone:#e8e6df;--white:#fff;--amber:#e6aa58;--clay:#bd684b;--danger:#a34538;--muted:#586a63;--line:#d7dad5;--display:"Newsreader",Georgia,serif;--ui:"Manrope","Avenir Next",system-ui,sans-serif;--shadow:0 18px 50px rgba(16,35,29,.1)}
*{box-sizing:border-box}html{background:var(--mist)}body{margin:0;color:var(--ink);background:var(--mist);font-family:var(--ui);min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #258060;outline-offset:3px}.hidden{display:none!important}
.site-header{height:76px;background:rgba(245,246,243,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(22px,calc((100vw - 1180px)/2));position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}.brand svg{width:34px;height:34px}.brand-name{font:600 34px/1 var(--display)}.doctor-name{font-size:13px;color:var(--muted);margin-left:8px}.nav{display:flex;align-items:center;gap:8px}.nav a{color:var(--ink);text-decoration:none;padding:10px 14px;border-radius:999px;font-size:14px;font-weight:700}.nav a:hover{background:var(--stone)}
.page{max-width:1180px;margin:0 auto;padding:54px 24px 88px}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center;min-height:560px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--moss);margin-bottom:18px}.hero h1,.page-title{font:600 clamp(48px,7vw,82px)/.95 var(--display);letter-spacing:-.035em;margin:0 0 24px}.hero p{font-size:19px;line-height:1.6;color:var(--muted);max-width:620px}.hero-card{background:var(--white);border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:var(--shadow)}.hero-card h2{font:600 30px/1.1 var(--display);margin:0 0 20px}.promise{display:flex;gap:14px;padding:16px 0;border-top:1px solid var(--line)}.promise:first-of-type{border-top:0}.promise-icon{width:38px;height:38px;background:var(--mist);border-radius:50%;display:grid;place-items:center;flex:none}.promise b{display:block;margin-bottom:4px}.promise span{font-size:13px;color:var(--muted)}
.btn{min-height:50px;border-radius:999px;padding:0 22px;border:1px solid transparent;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.btn-primary{background:var(--forest);color:#fff}.btn-primary:hover{background:#0f2f26}.btn-secondary{background:transparent;border-color:var(--forest);color:var(--forest)}.btn-soft{background:var(--stone);color:var(--ink)}.btn-danger{background:var(--danger);color:#fff}.btn-small{min-height:40px;padding:0 16px;font-size:13px}.btn-block{width:100%}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.section-head h1{font:600 48px/1 var(--display);margin:0}.section-head p{margin:10px 0 0;color:var(--muted)}
.stepper{display:flex;gap:8px;margin:0 0 34px}.step{height:5px;flex:1;background:var(--stone);border-radius:99px}.step.on{background:var(--forest)}.booking-grid{display:grid;grid-template-columns:1fr 360px;gap:28px}.card{background:var(--white);border:1px solid var(--line);border-radius:22px;padding:26px}.card h2{font-size:20px;margin:0 0 22px}.type-list{display:grid;gap:12px}.type-card{width:100%;text-align:left;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;justify-content:space-between;align-items:center;color:var(--ink)}.type-card:hover,.type-card.selected{border-color:var(--forest);box-shadow:inset 0 0 0 1px var(--forest)}.type-card b{display:block;margin-bottom:4px}.type-card small{color:var(--muted)}.duration{font-weight:700}.summary{position:sticky;top:100px;height:max-content}.summary-row{display:flex;justify-content:space-between;gap:18px;padding:13px 0;border-bottom:1px solid var(--line);font-size:14px}.summary-row span:first-child{color:var(--muted)}.summary-row:last-of-type{border-bottom:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:grid;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:13px;font-weight:700}.field input,.field select{min-height:52px;border:1px solid var(--line);border-radius:12px;background:var(--white);color:var(--ink);padding:0 14px;width:100%}.field-help{font-size:12px;color:var(--muted)}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:26px}.privacy{font-size:12px;line-height:1.55;color:var(--muted);background:var(--mist);padding:15px;border-radius:12px;margin-top:20px}.error{color:var(--danger);font-size:13px;margin-top:12px}.success-card{text-align:center;max-width:650px;margin:50px auto;background:var(--white);border:1px solid var(--line);border-radius:28px;padding:48px}.success-mark{width:74px;height:74px;margin:0 auto 22px;border:2px solid var(--forest);border-radius:50%;display:grid;place-items:center;font-size:30px}.success-card h1{font:600 48px/1 var(--display);margin:0 0 14px}.success-card p{color:var(--muted);line-height:1.6}
.login-wrap{min-height:calc(100vh - 76px);display:grid;place-items:center;padding:30px}.login-card{width:min(420px,100%);background:var(--white);border:1px solid var(--line);border-radius:26px;padding:34px;box-shadow:var(--shadow)}.login-card h1{font:600 44px/1 var(--display);margin:0 0 10px}.login-card>p{color:var(--muted);margin-bottom:28px}.login-card .field{margin-bottom:16px}.demo-cred{margin-top:20px;padding:14px;border-radius:12px;background:var(--mist);font-size:13px;color:var(--muted)}
.dashboard{display:grid;grid-template-columns:230px 1fr;min-height:100vh;background:var(--mist)}.sidebar{background:var(--ink);color:#fff;padding:28px 20px;display:flex;flex-direction:column;gap:28px}.sidebar .brand{color:#fff}.sidebar nav{display:grid;gap:6px}.side-link{border:0;background:transparent;color:#bdd0c8;padding:13px 14px;border-radius:12px;text-align:left;font-weight:700}.side-link:hover,.side-link.active{background:#244038;color:#fff}.side-bottom{margin-top:auto}.dashboard-main{padding:42px;min-width:0}.dash-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}.dash-top h1{font:600 46px/1 var(--display);margin:0}.dash-top p{margin:8px 0 0;color:var(--muted)}.appointments{display:grid;gap:12px}.appointment{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:18px;display:grid;grid-template-columns:100px 1fr auto;align-items:center;gap:18px}.appointment.active{border-color:var(--amber);box-shadow:inset 4px 0 0 var(--amber)}.appointment.cancelled{opacity:.55}.appt-time{font-weight:700}.appt-time small{display:block;font-weight:500;color:var(--muted);margin-top:3px}.appt-person b{display:block}.appt-person span{font-size:13px;color:var(--muted)}.appt-actions{display:flex;gap:8px}.status{display:inline-flex;margin-top:7px;padding:4px 8px;border-radius:99px;background:var(--mist);font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:700}.empty{text-align:center;color:var(--muted);padding:60px 20px;background:var(--white);border:1px dashed var(--line);border-radius:18px}
.modal-backdrop{position:fixed;inset:0;background:rgba(8,13,11,.58);z-index:50;display:grid;place-items:center;padding:20px}.modal{background:var(--white);border-radius:22px;padding:26px;width:min(560px,100%);max-height:90vh;overflow:auto}.modal h2{font:600 34px/1 var(--display);margin:0 0 22px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}
.office{min-height:100vh;background:#080d0b;color:#fff;display:grid;place-items:center;position:relative;overflow:hidden;text-align:center;padding:30px;transition:box-shadow .6s,border-color .6s}.office:after{content:"";position:absolute;left:8%;right:8%;bottom:-18%;height:36%;border-radius:50%;background:var(--glow,#31594a);filter:blur(70px);opacity:var(--glow-opacity,.28);pointer-events:none}.office-content{position:relative;z-index:2}.office-mark{width:58px;height:58px;margin:0 auto 40px;color:#b9c9c2}.office h1{font-size:clamp(34px,5vw,64px);letter-spacing:.06em;margin:0 0 18px}.office p{color:#a9bbb4;margin:0 0 44px}.office .btn{min-width:190px}.office-exit{position:absolute;right:24px;top:24px;z-index:3}.office.active{--glow:#31594a;--glow-opacity:.3}.office.winddown{--glow:#e6aa58;--glow-opacity:.52;animation:breathe 6s ease-in-out infinite}.office.closing{--glow:#e6aa58;--glow-opacity:.86;animation:pulse 2s ease-in-out infinite}.office.overdue{--glow:#bd684b;--glow-opacity:1;animation:pulse 1.2s ease-in-out infinite}.office.ready{--glow:#31594a;--glow-opacity:.22}
@keyframes breathe{50%{box-shadow:inset 0 -110px 220px rgba(230,170,88,.14)}}@keyframes pulse{50%{box-shadow:inset 0 -150px 280px rgba(230,170,88,.26)}}
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,120px);background:var(--ink);color:#fff;padding:13px 18px;border-radius:999px;z-index:100;transition:transform .25s;box-shadow:var(--shadow);font-size:14px}.toast.show{transform:translate(-50%,0)}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.office{animation:none!important}.office.winddown{box-shadow:inset 0 -80px 180px rgba(230,170,88,.13)}.office.closing{box-shadow:inset 0 -110px 220px rgba(230,170,88,.22)}.office.overdue{box-shadow:inset 0 0 0 5px var(--clay),inset 0 -140px 260px rgba(189,104,75,.28)}}
@media(max-width:850px){.hero{grid-template-columns:1fr;min-height:auto;padding-top:20px}.booking-grid{grid-template-columns:1fr}.summary{position:static;order:-1}.dashboard{grid-template-columns:1fr}.sidebar{display:none}.dashboard-main{padding:28px 18px}.appointment{grid-template-columns:82px 1fr}.appt-actions{grid-column:1/-1;justify-content:flex-end}.doctor-name{display:none}}
@media(max-width:600px){.site-header{height:66px;padding:0 16px}.nav a{padding:9px}.nav .hide-mobile{display:none}.page{padding:36px 16px 70px}.hero h1{font-size:54px}.hero{gap:28px}.hero-card{padding:22px}.section-head{align-items:start;flex-direction:column}.section-head h1{font-size:42px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.card{padding:20px}.appointment{grid-template-columns:1fr}.appt-actions{justify-content:flex-start}.success-card{padding:34px 22px}.success-card h1{font-size:40px}.dash-top{align-items:start;flex-direction:column}.office-exit{right:14px;top:14px}.office h1{font-size:34px}}
.office .office-exit{color:#dbe8e2;border-color:#49645a;background:rgba(8,13,11,.35)}.office .office-exit:hover{background:#173c31}

/* Ebb pearl and blue identity */
:root{--ink:#171c26;--forest:#234f7d;--moss:#4d7197;--sage:#91a5bb;--mist:#f7f8fa;--stone:#e9edf2;--white:#fff;--amber:#dda05d;--clay:#c65e52;--danger:#a9443b;--muted:#687282;--line:#dce1e8;--shadow:0 24px 64px rgba(18,30,48,.11)}
html,body{background:var(--mist)}.site-header{background:rgba(247,248,250,.92)}.btn-primary{background:var(--forest)}.btn-primary:hover{background:#193d63}.btn-primary:disabled{background:#aab5c2;cursor:not-allowed}.eyebrow{color:var(--moss)}
.booking-home{max-width:1380px;margin:0 auto;padding:44px 28px 84px;display:grid;grid-template-columns:minmax(290px,390px) minmax(650px,1fr);gap:34px;align-items:start}.intro-panel{position:sticky;top:118px;padding:22px 8px}.intro-panel h1{font:600 clamp(54px,6vw,78px)/.94 var(--display);letter-spacing:-.035em;margin:0 0 22px}.intro-panel>p{font-size:17px;line-height:1.65;color:var(--muted);max-width:360px}.intro-points{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.intro-points span{font-size:11px;font-weight:700;letter-spacing:.04em;padding:8px 10px;border:1px solid var(--line);border-radius:999px;background:#fff}
.ambient-preview{height:230px;border-radius:24px;margin-top:34px;background:#0b111c;color:#dce7f4;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;border:1px solid #263448;box-shadow:0 24px 60px rgba(10,19,32,.18)}.ambient-preview:after{content:"";position:absolute;left:12%;right:12%;bottom:-42px;height:100px;border-radius:50%;background:#3b77b6;filter:blur(34px);opacity:.65;animation:ebb-home-pulse 5.5s ease-in-out infinite}.ambient-orb{width:18px;height:18px;border-radius:50%;background:#b9d5f2;box-shadow:0 0 28px #5594d2;margin-bottom:32px;animation:ebb-orb 5.5s ease-in-out infinite}.ambient-preview span{font-size:9px;letter-spacing:.22em;color:#7f94aa;margin-bottom:8px}.ambient-preview strong{font-size:14px;letter-spacing:.14em;position:relative;z-index:1}@keyframes ebb-home-pulse{50%{opacity:.95;transform:scaleX(1.12)}}@keyframes ebb-orb{50%{box-shadow:0 0 54px #7bb4eb;transform:scale(1.12)}}
.booking-panel{background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);overflow:hidden}.booking-panel>header{display:flex;align-items:start;justify-content:space-between;padding:28px 30px 22px;border-bottom:1px solid var(--line)}.booking-kicker{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:700}.booking-panel h2{font:600 38px/1 var(--display);margin:6px 0 0}.timezone{font-size:12px;color:var(--muted);padding-top:8px}.duration-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:18px 30px;background:#fafbfd;border-bottom:1px solid var(--line)}.duration-tab{border:1px solid var(--line);background:#fff;border-radius:13px;padding:12px 10px;color:var(--ink);text-align:left}.duration-tab b,.duration-tab span{display:block}.duration-tab b{font-size:14px}.duration-tab span{font-size:11px;color:var(--muted);margin-top:3px}.duration-tab.selected{color:#fff;background:var(--forest);border-color:var(--forest)}.duration-tab.selected span{color:#d8e7f6}
.calendar-shell{display:grid;grid-template-columns:minmax(420px,1fr) 220px;border-bottom:1px solid var(--line)}.calendar{padding:26px 30px 30px}.calendar-head{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;margin-bottom:22px}.calendar-head b{text-align:center;font-size:15px}.calendar-head button{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);font-size:24px;line-height:1}.calendar-head button:hover{background:var(--stone)}.weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.weekdays{margin-bottom:8px}.weekdays span{text-align:center;font-size:10px;font-weight:700;text-transform:uppercase;color:#929aa7}.calendar-blank,.calendar-day{aspect-ratio:1;display:grid;place-items:center}.calendar-day{border:0;border-radius:50%;background:transparent;color:var(--ink);font-weight:600;font-size:13px}.calendar-day:not(:disabled):hover{background:#edf3f9}.calendar-day.selected{background:var(--forest);color:#fff}.calendar-day:disabled{color:#c9cdd3;cursor:not-allowed}
.times{border-left:1px solid var(--line);padding:26px 18px;background:#fafbfd}.times h3{font-size:13px;margin:0 0 15px}.time-list{display:grid;gap:8px;max-height:348px;overflow:auto;padding-right:3px}.time-slot{min-height:43px;border:1px solid #b9c8d7;border-radius:10px;background:#fff;color:var(--forest);font-size:13px;font-weight:700}.time-slot:hover,.time-slot.selected{background:var(--forest);color:#fff;border-color:var(--forest)}.no-times{font-size:12px;line-height:1.5;color:var(--muted)}
.booking-details{padding:24px 30px 28px}.selected-summary{display:flex;justify-content:space-between;gap:16px;align-items:center;background:#f2f6fa;border-radius:12px;padding:13px 15px;margin-bottom:18px}.selected-summary b,.selected-summary span{font-size:12px}.selected-summary span{color:var(--muted)}.compact-fields{display:grid;grid-template-columns:1.2fr .9fr 1.2fr;gap:12px}.booking-submit{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px}.booking-submit p{font-size:11px;color:var(--muted);margin:0}.booking-submit .btn{min-width:180px}
.login-card{border-radius:22px}.demo-cred{display:none}.office{background:#080d16}.office.active{--glow:#315f8f}.office.winddown,.office.closing{--glow:#d9a05e}.sidebar{background:#111a27}.office .office-exit{color:#dce7f4;border-color:#40546c;background:rgba(8,13,22,.42)}
@media(prefers-reduced-motion:reduce){.ambient-preview:after,.ambient-orb{animation:none}}
@media(max-width:980px){.booking-home{grid-template-columns:1fr;padding-top:30px}.intro-panel{position:static;display:grid;grid-template-columns:1fr 320px;column-gap:28px;align-items:center}.intro-panel .ambient-preview{grid-column:2;grid-row:1/5;margin:0}.intro-points{grid-column:1}.calendar-shell{grid-template-columns:minmax(390px,1fr) 210px}}
@media(max-width:700px){.site-header{height:64px}.brand-name{font-size:29px}.doctor-name{display:inline;font-size:11px}.nav a{font-size:12px;border:1px solid var(--line);padding:8px 11px}.booking-home{padding:26px 14px 64px;gap:24px}.intro-panel{display:block;padding:6px 2px}.intro-panel h1{font-size:52px}.intro-panel>p{font-size:15px}.intro-points{display:none}.ambient-preview{height:180px;margin-top:24px}.booking-panel{border-radius:20px}.booking-panel>header{padding:22px 18px 18px}.booking-panel h2{font-size:32px}.duration-tabs{padding:14px 18px;gap:7px}.duration-tab{padding:10px 8px}.calendar-shell{grid-template-columns:1fr}.calendar{padding:22px 16px}.weekdays,.calendar-grid{gap:3px}.calendar-day{font-size:13px}.times{border-left:0;border-top:1px solid var(--line);padding:18px}.time-list{display:flex;overflow-x:auto;max-height:none;padding:0 0 5px}.time-slot{min-width:86px;padding:0 12px}.booking-details{padding:20px 18px 22px}.compact-fields{grid-template-columns:1fr}.selected-summary{align-items:start;flex-direction:column;gap:4px}.booking-submit{align-items:stretch;flex-direction:column}.booking-submit .btn{width:100%}.booking-submit p{text-align:center;order:2}}

/* Full-screen booking composition */
body:has(.booking-home){background:#345f8d;overflow:hidden}.site-header:has(+ .booking-home){background:#345f8d;border-bottom-color:rgba(255,255,255,.18)}.site-header:has(+ .booking-home) .brand,.site-header:has(+ .booking-home) .nav a{color:#fff}.site-header:has(+ .booking-home) .nav a{border-color:rgba(255,255,255,.38)}
.booking-home{height:calc(100vh - 76px);padding:22px 28px;align-items:stretch;overflow:hidden}.intro-panel{top:auto;position:relative;align-self:center;color:#fff}.intro-panel .eyebrow{color:#c8dbed}.intro-panel>p{color:#e0eaf4}.ambient-preview{height:190px;margin-top:24px;background:#0c1828;border-color:#5279a0;box-shadow:0 20px 50px rgba(11,25,43,.25)}.booking-panel{height:100%;display:flex;flex-direction:column;min-height:0}.booking-panel>header{padding:20px 28px 16px}.booking-panel h2{font-size:34px}.duration-tabs{padding:12px 28px}.duration-tab{padding:10px}.duration-tab span{display:none}.calendar-shell{flex:1;min-height:0}.calendar{padding:18px 26px}.calendar-head{margin-bottom:10px}.calendar-head button{width:34px;height:34px}.weekdays{margin-bottom:3px}.calendar-blank,.calendar-day{aspect-ratio:auto;height:34px}.times{padding:18px 16px}.time-list{max-height:270px}.time-slot{min-height:38px}.booking-details{padding:15px 28px 18px}.selected-summary{padding:10px 13px;margin-bottom:12px}.field input{min-height:44px}.booking-submit{margin-top:12px}.booking-submit .btn{min-height:46px}.booking-submit p{display:none}
@media(max-width:980px) and (min-width:701px){.booking-home{grid-template-columns:300px minmax(0,1fr);gap:24px}.intro-panel{display:block}.intro-panel .ambient-preview{height:180px;margin-top:22px}.intro-panel h1{font-size:56px}.intro-panel>p{font-size:14px}.calendar-shell{grid-template-columns:minmax(350px,1fr) 190px}.calendar{padding:16px}.booking-details{padding-left:20px;padding-right:20px}}
@media(max-width:700px){body:has(.booking-home){overflow:hidden}.site-header:has(+ .booking-home){height:58px;padding:0 12px}.booking-home{height:calc(100svh - 58px);padding:8px;display:block}.intro-panel{display:none}.booking-panel{height:100%;border-radius:16px}.booking-panel>header{height:66px;padding:13px 15px 10px;position:relative}.booking-panel>header:after{content:"";position:absolute;right:74px;top:22px;width:14px;height:14px;border-radius:50%;background:#84b5e5;box-shadow:0 0 24px #4788c8;animation:ebb-orb 5.5s ease-in-out infinite}.booking-panel h2{font-size:27px;margin-top:2px}.booking-kicker{font-size:9px}.timezone{font-size:10px}.duration-tabs{height:56px;padding:8px 12px;gap:6px}.duration-tab{padding:7px 8px;text-align:center}.duration-tab b{font-size:12px}.calendar-shell{display:grid;grid-template-columns:1fr;grid-template-rows:minmax(238px,1fr) 58px;flex:1;min-height:0}.calendar{padding:10px 12px}.calendar-head{margin-bottom:4px}.calendar-head b{font-size:13px}.calendar-head button{width:30px;height:30px}.weekdays{margin-bottom:1px}.weekdays span{font-size:8px}.calendar-blank,.calendar-day{height:27px}.calendar-day{font-size:11px}.times{border-left:0;border-top:1px solid var(--line);padding:7px 10px;display:grid;grid-template-columns:88px 1fr;gap:8px;align-items:center;min-width:0}.times h3{font-size:10px;margin:0;line-height:1.25}.time-list{display:flex;max-height:none;overflow-x:auto;gap:5px;padding:0}.time-slot{min-width:67px;min-height:34px;font-size:10px;padding:0 7px}.no-times{font-size:9px;margin:0}.booking-details{padding:9px 12px 10px}.selected-summary{min-height:34px;padding:6px 9px;margin-bottom:7px;display:flex;flex-direction:row;align-items:center;gap:8px}.selected-summary b,.selected-summary span{font-size:9px}.compact-fields{grid-template-columns:1fr 1fr;gap:6px}.compact-fields .field:first-child{grid-column:1/-1}.field{gap:3px}.field label{font-size:9px}.field input{min-height:34px;border-radius:8px;padding:0 9px;font-size:12px}.booking-submit{margin-top:7px}.booking-submit .btn{min-height:38px;font-size:12px}.error{font-size:10px;margin-top:4px}.doctor-name{color:#dbe7f2}}

/* Office Mode palette applied to the booking environment */
body:has(.booking-home){background:radial-gradient(ellipse 72% 44% at 50% 108%,#3f78af 0%,#285783 42%,transparent 72%),linear-gradient(155deg,#09182a 0%,#112b47 52%,#244f79 100%)}.site-header:has(+ .booking-home){background:#09182a;border-bottom-color:rgba(183,212,241,.2)}.booking-home{background:transparent}.intro-panel{color:#f4f8fc}.intro-panel .eyebrow{color:#a9c9e7}.intro-panel>p{color:#c6d9eb}.booking-panel{background:#f7faff;border-color:#6f91b2;box-shadow:0 28px 80px rgba(2,10,22,.34)}.booking-panel>header,.booking-details,.calendar{background:#f7faff}.duration-tabs,.times{background:#edf4fb}.duration-tab,.calendar-head button,.time-slot,.field input{background:#fbfdff;border-color:#bfd0e0}.duration-tab.selected,.calendar-day.selected,.time-slot.selected,.time-slot:hover{background:#285f92;border-color:#285f92}.selected-summary{background:#e6f0f9}.booking-kicker,.timezone,.weekdays span{color:#647f9b}.calendar-day:not(:disabled):hover{background:#dcebf7}.btn-primary{background:#285f92}.btn-primary:hover{background:#1c4d7b}
@media(max-width:700px){.booking-panel>header:after{display:none}.booking-panel{border-color:#50779d}.site-header:has(+ .booking-home){background:#09182a}.booking-home{background:transparent}}

/* Booking refinements and session controls */
.booking-home{position:relative}.booking-home:before{content:"";position:absolute;z-index:0;left:-8%;right:-8%;bottom:-42%;height:72%;background:radial-gradient(ellipse at center,rgba(213,234,252,.72) 0%,rgba(117,174,224,.34) 38%,rgba(49,105,157,0) 72%);filter:blur(22px);animation:page-breathe 6s ease-in-out infinite;pointer-events:none}.booking-home>.intro-panel,.booking-home>.booking-panel{position:relative;z-index:1}@keyframes page-breathe{50%{opacity:.55;transform:scaleX(.9) translateY(3%)}}
.intro-panel>p{font-size:0}.intro-panel>p:after{content:"Every appointment includes focused consultation time and a five-minute wind-down.";font-size:17px;line-height:1.65;color:#c6d9eb}.calendar-shell{order:1}.duration-tabs{order:2;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.booking-details{order:3}.calendar-day{width:34px;height:34px;aspect-ratio:1;margin:auto;border-radius:50%}.calendar{max-width:650px}.sidebar [data-office],.sidebar [data-reset]{display:none}.appt-actions{flex-wrap:wrap;justify-content:flex-end}.modal-copy{color:var(--muted);font-size:14px;line-height:1.55}.limit-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0 8px}.limit-option{min-height:108px;border:1px solid var(--line);border-radius:16px;background:#f7faff;color:var(--ink)}.limit-option:hover{border-color:var(--forest);background:#e9f2fb}.limit-option b,.limit-option span{display:block}.limit-option b{font:600 36px/1 var(--display)}.limit-option span{font-size:11px;color:var(--muted);margin-top:7px}
@media(prefers-reduced-motion:reduce){.booking-home:before{animation:none}}
@media(max-width:700px){.booking-home:before{bottom:-22%;height:48%;filter:blur(15px)}.intro-panel>p:after{font-size:14px}.calendar-day{width:27px;height:27px}.calendar{max-width:none}.duration-tabs{order:2}.calendar-shell{order:1}.booking-details{order:3}.limit-options{gap:8px}.limit-option{min-height:90px}.appt-actions{justify-content:flex-start}}

/* Unified typography and doctor utilities */
:root{--display:"Manrope","Avenir Next",system-ui,sans-serif}.site-header:has(+ .booking-home) .nav a{background:#f7faff;color:#10243a;border-color:#f7faff}.site-header:has(+ .booking-home) .nav a:hover{background:#dcebf7}.delay-stepper{display:grid;grid-template-columns:58px 80px 1fr 58px;align-items:center;gap:10px;margin:24px 0}.delay-stepper button{width:54px;height:54px;border-radius:50%;border:1px solid var(--line);background:#edf4fb;color:var(--forest);font-size:28px}.delay-stepper strong{font-size:34px;text-align:right}.delay-stepper span{font-size:13px;color:var(--muted)}.client-list{display:grid;gap:10px}.client-list article{display:flex;align-items:center;gap:13px;padding:14px;border:1px solid var(--line);border-radius:13px;background:#f7faff}.client-list b,.client-list span{display:block}.client-list span{font-size:12px;color:var(--muted);margin-top:3px}.client-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#285f92;color:#fff;font-weight:700;flex:none}

/* Continuous Office Mode phase transitions */
.office{transition:background-color 3s ease,box-shadow 3s ease,border-color 3s ease}.office:after{transition:background-color 3s ease,opacity 3s ease,filter 3s ease,transform 3s ease}.office h1,.office p{transition:color 2.4s ease,opacity 2.4s ease}.office.active:after{transform:scale(.94)}.office.winddown:after{transform:scale(1)}.office.closing:after{transform:scale(1.06)}.office.overdue:after{transform:scale(1.12)}

/* Client continuity */
.client-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:22px}.client-metrics article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}.client-metrics span,.client-metrics b{display:block}.client-metrics span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.client-metrics b{font-size:30px;margin-top:8px}.clients-table{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.clients-table>header,.clients-table>article{display:grid;grid-template-columns:minmax(220px,1.4fr) 1fr 1fr 1fr 60px auto;gap:16px;align-items:center;padding:14px 18px}.clients-table>header{background:#edf4fb;color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.clients-table>article{border-top:1px solid var(--line)}.clients-table>article:first-of-type{border-top:0}.clients-table b,.clients-table small{display:block}.clients-table b{font-size:13px}.clients-table small{font-size:10px;color:var(--muted);margin-top:4px;line-height:1.4}.client-name{display:flex;align-items:center;gap:11px}.client-name>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#285f92;color:#fff;font-weight:700;flex:none}.client-actions{display:flex;gap:7px}.profile-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:20px 0}.profile-facts article{padding:12px;background:#edf4fb;border-radius:11px}.profile-facts span,.profile-facts b{display:block}.profile-facts span{font-size:9px;color:var(--muted);text-transform:uppercase}.profile-facts b{font-size:12px;margin-top:5px}.client-profile h3{font-size:13px;margin:22px 0 10px}.profile-history{display:grid;gap:7px}.profile-history article{display:flex;justify-content:space-between;align-items:center;padding:11px;border:1px solid var(--line);border-radius:10px}.profile-history b,.profile-history span{display:block}.profile-history span{font-size:10px;color:var(--muted);margin-top:3px}

/* Thoughtful closing cues */
.office-content{min-width:min(620px,90vw)}.office-kicker{display:block;min-height:18px;font-size:10px;letter-spacing:.2em;color:#9db4c9;margin-bottom:16px;transition:opacity .65s ease}.office-prompt{min-height:28px;font-size:16px}.office h1{transition:color 2.4s ease,opacity .65s ease}.office-prompt{transition:color 2.4s ease,opacity .65s ease}.copy-fade{opacity:0!important}.office-mark{transition:opacity 2s ease}.closing-visual{position:absolute;width:84px;height:84px;left:50%;top:-14px;transform:translateX(-50%);opacity:0;transition:opacity 2.5s ease}.closing-visual i{position:absolute;inset:50%;border:1px solid rgba(190,220,247,.48);border-radius:50%;transform:translate(-50%,-50%);animation:closing-ring 4.8s ease-out infinite}.closing-visual i:nth-child(2){animation-delay:1.6s}.closing-visual i:nth-child(3){animation-delay:3.2s}@keyframes closing-ring{0%{width:10px;height:10px;opacity:0}20%{opacity:.65}100%{width:82px;height:82px;opacity:0}}.office.winddown .closing-visual,.office.closing .closing-visual,.office.overdue .closing-visual{opacity:1}.office.winddown .office-mark,.office.closing .office-mark,.office.overdue .office-mark{opacity:.2}
@media(prefers-reduced-motion:reduce){.closing-visual i{animation:none;width:56px;height:56px;opacity:.5}}
@media(max-width:850px){.client-metrics{grid-template-columns:repeat(3,1fr)}.clients-table>header{display:none}.clients-table>article{grid-template-columns:1fr 1fr;padding:16px}.client-name,.client-actions{grid-column:1/-1}.clients-table [data-label]:before{content:attr(data-label);display:block;font-size:9px;color:var(--muted);text-transform:uppercase;margin-bottom:4px}.profile-facts{grid-template-columns:1fr 1fr}}
.office.overdue{--glow:#b9d5f2}
.office.winddown h1,.office.closing h1{font-size:clamp(42px,6vw,78px);line-height:1.08;letter-spacing:-.025em;max-width:880px;margin-left:auto;margin-right:auto;text-transform:none}.office.winddown .office-prompt,.office.closing .office-prompt{font-size:15px;color:#aebfce}.office h1,.office-prompt,.office-kicker{transition:color 2.4s ease,opacity .9s ease}.office.winddown .office-kicker,.office.closing .office-kicker{margin-bottom:22px}

/* Full-canvas landing glow, free of container clipping */
body:has(.booking-home){position:relative}body:has(.booking-home):after{content:"";position:fixed;z-index:0;left:-10vw;right:-10vw;bottom:-38vh;height:76vh;background:radial-gradient(ellipse at center,rgba(213,234,252,.72) 0%,rgba(117,174,224,.34) 38%,rgba(49,105,157,0) 72%);filter:blur(24px);animation:page-breathe 6s ease-in-out infinite;pointer-events:none}.booking-home:before{display:none}.site-header:has(+ .booking-home),.booking-home{position:relative;z-index:1}.booking-home{overflow:visible}
@media(prefers-reduced-motion:reduce){body:has(.booking-home):after{animation:none}}

/* Full-width doctor schedule */
.dashboard.no-sidebar{display:block;min-height:100vh}.doctor-bar{height:72px;background:#111a27;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(28px,calc((100vw - 1240px)/2));border-bottom:1px solid #283547}.doctor-bar .brand{color:#fff}.doctor-bar .brand svg{width:32px;height:32px}.doctor-logout{border:0;background:transparent;color:#c5d1dc;font-weight:700;padding:10px 12px;border-radius:10px}.doctor-logout:hover{background:#233043;color:#fff}.no-sidebar .dashboard-main{max-width:1240px;margin:0 auto;padding:38px 28px}.dash-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:850px){.doctor-bar{height:64px;padding:0 18px}.no-sidebar .dashboard-main{padding:26px 18px}.dash-actions{justify-content:flex-start}}

/* Attune live session time bloom */
.office{--session-progress:0;--session-warmth:0;background:#081411;isolation:isolate;transition:background 4s ease,color 4s ease}.office:before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 50% 42%,rgba(235,190,118,calc(var(--session-warmth) * .42)),transparent 34%),linear-gradient(115deg,rgba(61,90,68,.16),rgba(177,135,74,calc(var(--session-warmth) * .24)));transition:opacity 3s ease}.office:after{display:none}.time-bloom{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.bloom-core{position:absolute;left:50%;top:43%;width:clamp(180px,30vw,430px);aspect-ratio:1.3;transform:translate(-50%,-50%) scale(calc(.62 + var(--session-progress) * .38));opacity:calc(.12 + var(--session-progress) * .76);filter:drop-shadow(0 0 calc(8px + var(--session-progress) * 32px) rgba(243,202,128,calc(var(--session-warmth) * .5)));transition:opacity 3s ease,filter 3s ease}.bloom-core i{--angle:calc(var(--i) * 32.72deg);position:absolute;left:50%;top:50%;width:32%;height:42%;border:1px solid rgba(223,230,198,calc(.16 + var(--session-progress) * .42));border-radius:48% 56% 44% 60%;background:radial-gradient(circle at 42% 38%,rgba(255,232,176,calc(var(--session-warmth) * .32)),rgba(112,143,101,.05) 58%,transparent 70%);transform:translate(-50%,-50%) rotate(var(--angle)) translateY(calc(-12px - var(--session-progress) * 48px)) scale(calc(.62 + var(--session-progress) * .38));transform-origin:50% 50%;animation:attune-lobe 11s ease-in-out infinite alternate;animation-delay:calc(var(--i) * -.73s);transition:border-color 3s ease,background 3s ease}.flow-lines{position:absolute;left:-8%;right:-8%;bottom:6%;height:30%;opacity:calc(.18 + var(--session-progress) * .42);filter:blur(.2px);transform:translateY(calc(22% - var(--session-progress) * 12%));transition:opacity 3s ease,transform 3s ease}.flow-lines i{position:absolute;left:0;width:112%;height:80%;border-radius:50%;border-top:2px solid rgba(177,201,157,.28);transform:rotate(-2deg);animation:attune-flow 13s ease-in-out infinite alternate}.flow-lines i:nth-child(2){top:25%;left:-6%;border-color:rgba(218,190,128,calc(.12 + var(--session-warmth) * .32));animation-duration:17s;animation-direction:alternate-reverse}.flow-lines i:nth-child(3){top:48%;left:3%;border-color:rgba(232,157,98,calc(var(--session-warmth) * .38));animation-duration:19s}.office-content{width:min(920px,90vw);display:flex;flex-direction:column;align-items:center}.session-stage{position:fixed;left:26px;bottom:24px;font-size:10px;font-weight:700;letter-spacing:.22em;color:rgba(220,230,219,.58);transition:opacity .9s ease}.office h1{text-shadow:0 2px 30px rgba(1,9,7,.75)}.office-content>.btn{margin-top:2px;background:rgba(26,57,49,.72);border:1px solid rgba(210,224,217,.24);backdrop-filter:blur(12px)}.office.overdue{background:#eef2ed;color:#29372f}.office.overdue:before{background:radial-gradient(circle at 50% 44%,rgba(224,181,115,.28),transparent 42%)}.office.overdue .bloom-core{opacity:.12;filter:blur(5px)}.office.overdue .flow-lines{opacity:.12}.office.overdue h1{color:#29372f;text-shadow:none}.office.overdue .office-prompt,.office.overdue .session-stage{color:#65716a}.office.overdue .office-exit{color:#34473e;border-color:#8ca097;background:rgba(255,255,255,.55)}
@keyframes attune-lobe{to{border-radius:58% 42% 61% 39%;transform:translate(-50%,-50%) rotate(calc(var(--angle) + 7deg)) translateY(calc(-16px - var(--session-progress) * 52px)) scale(calc(.65 + var(--session-progress) * .4))}}@keyframes attune-flow{to{transform:rotate(2deg) scaleX(1.06) translateY(-12px)}}
@media(max-width:700px){.bloom-core{top:38%;width:min(76vw,360px)}.flow-lines{bottom:10%;height:24%}.office-content{width:92vw}.session-stage{left:16px;bottom:15px}.office h1{font-size:clamp(30px,9vw,52px)}}
@media(prefers-reduced-motion:reduce){.bloom-core i,.flow-lines i{animation:none}.bloom-core,.flow-lines{transition:none}}

/* Recognisable brain clock, drawn live rather than rendered as an image */
.brain-clock{position:absolute;left:50%;top:3%;width:clamp(330px,48vw,640px);height:auto;transform:translateX(-50%) scale(calc(.86 + var(--session-progress) * .14));overflow:visible;opacity:calc(.34 + var(--session-progress) * .64);filter:drop-shadow(0 0 calc(5px + var(--session-progress) * 26px) rgba(229,194,125,calc(.12 + var(--session-warmth) * .5)));transition:opacity 2.5s ease,filter 3s ease,transform 3s ease}.brain-lines{fill:none;stroke:rgb(calc(135 + var(--session-warmth) * 105),calc(166 + var(--session-warmth) * 45),calc(145 - var(--session-warmth) * 40));stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.brain-lines path{opacity:calc(.35 + var(--session-progress) * .65);vector-effect:non-scaling-stroke;animation:brain-drift 7s ease-in-out infinite alternate}.brain-lines path:nth-child(2n){animation-delay:-2.3s;animation-duration:9s}.brain-outline{stroke-width:3!important}.brain-halo ellipse{fill:rgba(217,182,105,calc(var(--session-warmth) * .12));stroke:rgba(189,207,174,.08);stroke-width:1;transform-origin:center;animation:brain-breathe 6s ease-in-out infinite}.brain-sparks circle{fill:#f5d99a;opacity:calc(var(--session-progress) * var(--session-warmth));filter:drop-shadow(0 0 7px #efbd6e);animation:brain-spark 3.6s ease-in-out infinite;animation-delay:calc(var(--i) * -.4s)}.office-content{margin-top:clamp(190px,28vh,285px)}.office.overdue .brain-clock{opacity:.2;filter:blur(2px)}
@keyframes brain-breathe{50%{transform:scale(1.035)}}@keyframes brain-drift{to{transform:translateY(-2px);stroke-width:2.5}}@keyframes brain-spark{50%{opacity:.15;transform:scale(1.8)}}
@media(max-width:700px){.brain-clock{top:7%;width:min(88vw,430px)}.office-content{margin-top:clamp(150px,26vh,230px)}}
@media(prefers-reduced-motion:reduce){.brain-lines path,.brain-halo ellipse,.brain-sparks circle{animation:none}}
.demo-clock{position:absolute;left:24px;top:24px;z-index:4;width:170px;text-align:left}.demo-clock span{display:block;margin-bottom:8px;color:#b8c9c0;font-size:9px;font-weight:700;letter-spacing:.18em}.demo-clock i{display:block;height:3px;border-radius:99px;background:rgba(255,255,255,.14);overflow:hidden}.demo-clock b{display:block;width:0;height:100%;border-radius:inherit;background:#eac47d;transition:width .25s linear}.office.overdue .demo-clock span{color:#65716a}.office.overdue .demo-clock i{background:#d8ded9}.office.overdue .demo-clock b{background:#ad7e3f}@media(max-width:700px){.demo-clock{left:14px;top:18px;width:130px}.demo-clock span{font-size:8px}}

/* Dimensional brain treatment inspired by translucent anatomical light studies */
.brain-clock{top:1%;width:clamp(390px,54vw,700px);opacity:calc(.62 + var(--session-progress) * .36);filter:drop-shadow(0 18px 30px rgba(0,7,7,.42)) drop-shadow(0 0 calc(10px + var(--session-progress) * 38px) rgba(129,188,174,calc(.16 + var(--session-progress) * .2))) drop-shadow(0 0 calc(var(--session-warmth) * 54px) rgba(234,176,91,.52))}.brain-halo ellipse{fill:rgba(43,111,99,calc(.08 + var(--session-progress) * .18));stroke:rgba(184,220,205,calc(.1 + var(--session-progress) * .16));stroke-width:2}.brain-lines{stroke:rgb(calc(132 + var(--session-warmth) * 104),calc(190 + var(--session-warmth) * 20),calc(181 - var(--session-warmth) * 72));stroke-width:3.1}.brain-lines .brain-outline{fill:rgba(34,101,93,calc(.18 + var(--session-progress) * .2));stroke-width:4.6!important;filter:drop-shadow(0 0 9px rgba(126,211,198,.35))}.brain-lines path:not(.brain-outline){stroke-width:3;filter:drop-shadow(0 0 5px rgba(143,214,198,calc(.18 + var(--session-progress) * .34)))}.brain-sparks circle{r:3;opacity:calc(var(--session-progress) * var(--session-warmth) * .5)}.office-content{margin-top:clamp(220px,31vh,320px)}.office.winddown .brain-clock,.office.closing .brain-clock{filter:drop-shadow(0 18px 30px rgba(0,7,7,.35)) drop-shadow(0 0 42px rgba(229,177,92,.48))}.office.overdue .brain-clock{opacity:.14;filter:blur(3px)}
@media(max-width:700px){.brain-clock{top:5%;width:min(96vw,500px)}.office-content{margin-top:clamp(170px,29vh,250px)}}
.brain-lines .cerebellum{fill:rgba(42,106,96,calc(.12 + var(--session-progress) * .18));stroke-width:2.6}.brain-lines .brain-stem{stroke-width:4;opacity:calc(.42 + var(--session-progress) * .45)}
.brain-clock:has(.reference-lines){filter:drop-shadow(0 15px 26px rgba(0,8,5,.44)) drop-shadow(0 0 calc(7px + var(--session-progress) * 23px) rgba(190,185,105,calc(.12 + var(--session-progress) * .28)))}.brain-lines.reference-lines{fill:none;stroke:rgb(calc(113 + var(--session-warmth) * 107),calc(139 + var(--session-warmth) * 54),calc(98 - var(--session-warmth) * 28));stroke-width:2.15}.reference-lines .brain-outline,.reference-lines .cerebellum,.reference-lines .temporal-lobe{fill:none!important;stroke-width:2.7!important}.reference-lines .brain-stem{stroke-width:2.3;opacity:calc(.55 + var(--session-progress) * .4)}.reference-lines path{filter:drop-shadow(0 0 3px rgba(197,194,116,calc(.08 + var(--session-progress) * .3)));animation:none}.office.winddown .brain-clock:has(.reference-lines),.office.closing .brain-clock:has(.reference-lines){filter:drop-shadow(0 15px 26px rgba(0,8,5,.38)) drop-shadow(0 0 30px rgba(229,178,91,.4))}
.brain-depth>path{fill:rgba(34,83,78,calc(.08 + var(--session-progress) * .1));stroke:none}.brain-light{fill:rgba(197,226,214,calc(.03 + var(--session-progress) * .16));filter:blur(calc(18px - var(--session-progress) * 8px));transform-origin:center;animation:brain-breathe 6s ease-in-out infinite}.brain-mesh{fill:none;stroke:rgba(140,193,184,calc(.06 + var(--session-progress) * .14));stroke-width:.65}.neural-network{fill:none;stroke:rgba(184,216,208,calc(.035 + var(--session-progress) * .15));stroke-width:.42}.neural-network circle{fill:rgb(calc(175 + var(--session-warmth) * 65),calc(218 + var(--session-warmth) * 12),calc(211 - var(--session-warmth) * 78));stroke:none;opacity:calc(.12 + var(--session-progress) * .62);filter:drop-shadow(0 0 2px rgba(206,232,224,.6));animation:neural-twinkle 5s ease-in-out infinite;animation-delay:calc(var(--i) * -.08s)}@keyframes neural-twinkle{50%{opacity:.2}}.office.winddown .brain-light,.office.closing .brain-light{fill:rgba(240,190,105,.2)}

/* Session states at the top left */
.demo-clock,.session-stage{display:none}.phase-tracker{position:absolute;left:24px;top:22px;z-index:5;width:min(520px,calc(100vw - 220px));text-align:left}.phase-tracker header{margin-bottom:10px}.phase-tracker header span{font-size:9px;font-weight:700;letter-spacing:.2em;color:#a8bbb2}.phase-progress{height:2px;background:rgba(218,229,223,.14);position:relative;margin:0 7px 12px}.phase-progress b{position:absolute;left:0;top:0;height:100%;width:0;background:#d9c080;box-shadow:0 0 10px rgba(224,189,111,.35);transition:width .25s linear}.phase-progress i{position:absolute;inset:-2px auto auto 0;width:6px;height:6px;border-radius:50%;background:#d9c080}.phase-states{display:grid;grid-template-columns:1.6fr .65fr .65fr .42fr .15fr;gap:0}.phase-state{position:relative;color:rgba(187,203,195,.38);transition:color 1.2s ease,opacity 1.2s ease}.phase-state i{display:block;width:5px;height:5px;border-radius:50%;background:currentColor;margin-bottom:6px}.phase-state span,.phase-state small{display:block}.phase-state span{font-size:8px;font-weight:700;letter-spacing:.11em}.phase-state small{font-size:7px;margin-top:3px;opacity:.72}.phase-state.current{color:#f0d499}.phase-state.current i{box-shadow:0 0 12px currentColor;animation:phase-marker 2.8s ease-in-out infinite}.phase-state.passed{color:#9eb8ad}.office.overdue .phase-tracker header span,.office.overdue .phase-state{color:#77847d}.office.overdue .phase-state.current{color:#9a713c}.office.overdue .phase-progress{background:#d5dcd8}.office.overdue .phase-progress b{background:#a67b43}@keyframes phase-marker{50%{transform:scale(1.6);opacity:.65}}
@media(max-width:700px){.phase-tracker{left:14px;top:15px;width:calc(100vw - 112px)}.phase-state span{font-size:6.5px;letter-spacing:.05em}.phase-state small{display:none}.phase-progress{margin-bottom:8px}}

/* Segmented side-view base drawing */
.brain-clock:has(.base-brain) .brain-depth,.brain-clock:has(.base-brain) .reference-lines{display:none}.base-brain{fill:rgba(18,100,110,calc(.025 + var(--session-progress) * .075));stroke:rgb(calc(56 + var(--session-warmth) * 176),calc(188 + var(--session-warmth) * 15),calc(192 - var(--session-warmth) * 92));stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.base-brain>path:not(.base-outline):not(.base-stem){opacity:calc(.42 + var(--session-progress) * .56)}.base-outline{fill:none;stroke-width:3.5;filter:drop-shadow(0 0 7px rgba(65,205,207,.4))}.base-ridges{fill:none;stroke-width:1.3;opacity:calc(.28 + var(--session-progress) * .58)}.base-cerebellum{fill:rgba(20,112,115,calc(.04 + var(--session-progress) * .08))}.base-stem{fill:none;stroke-width:3}.brain-clock:has(.base-brain){filter:drop-shadow(0 16px 25px rgba(0,6,9,.45)) drop-shadow(0 0 calc(8px + var(--session-progress) * 28px) rgba(54,197,201,calc(.14 + var(--session-progress) * .3)))}.office.winddown .brain-clock:has(.base-brain),.office.closing .brain-clock:has(.base-brain){filter:drop-shadow(0 16px 25px rgba(0,6,9,.4)) drop-shadow(0 0 32px rgba(229,177,91,.42))}

/* Light travels along the drawing and grows denser over time */
.moving-light-system{pointer-events:none}.travel-light{fill:rgb(calc(135 + var(--session-warmth) * 115),calc(224 + var(--session-warmth) * 16),calc(230 - var(--session-warmth) * 125));opacity:clamp(0,calc((var(--session-progress) - var(--threshold)) * 12),1);filter:drop-shadow(0 0 calc(3px + var(--session-progress) * 7px) currentColor)}.light-junction{fill:rgb(calc(129 + var(--session-warmth) * 126),calc(216 + var(--session-warmth) * 20),calc(221 - var(--session-warmth) * 122));opacity:clamp(0,calc((var(--session-progress) - var(--threshold)) * 9),.9);filter:drop-shadow(0 0 calc(4px + var(--session-progress) * 8px) currentColor);animation:junction-glow 3.2s ease-in-out infinite;animation-delay:calc(var(--i) * -.31s)}@keyframes junction-glow{50%{r:5;opacity:.32}}

/* Additional waves appear as the session advances */
.flow-lines{height:35%;bottom:-3%;opacity:1}.flow-lines i,.flow-lines i:nth-child(2),.flow-lines i:nth-child(3){top:calc(var(--wave) * 8%);left:calc((var(--wave) - 4) * -1.2%);height:68%;border-top:1.5px solid rgb(calc(91 + var(--session-warmth) * 150),calc(164 + var(--session-warmth) * 35),calc(152 - var(--session-warmth) * 70));opacity:clamp(0,calc((var(--session-progress) - var(--threshold)) * 9),.46);animation:attune-flow calc(13s + var(--wave) * 1.1s) ease-in-out infinite alternate;filter:drop-shadow(0 0 calc(var(--session-progress) * 5px) rgba(219,180,103,.28))}

/* State labels sit at the exact percentage where they activate */
.phase-states{display:block;position:relative;height:30px}.phase-state{position:absolute;top:0;transform:translateX(-50%)}.phase-state:nth-child(1){left:0;transform:none}.phase-state:nth-child(2){left:60%}.phase-state:nth-child(3){left:75%}.phase-state:nth-child(4){left:90%}.phase-state:nth-child(5){left:100%;transform:translateX(-100%);text-align:right}.phase-state:nth-child(5) i{margin-left:auto}.phase-state.current{color:#ffe09a;text-shadow:0 0 12px rgba(244,202,116,.38)}.phase-state.passed{color:#b8d4c8}.phase-progress i{display:none}

/* High-definition lateral brain study */
.brain-clock:has(.hd-brain){top:7%;width:clamp(500px,58vw,780px);opacity:1;filter:drop-shadow(0 18px 28px rgba(0,7,5,.42)) drop-shadow(0 0 11px rgba(155,190,143,.17));transform:translateX(-50%)}.hd-brain{fill:none;stroke:#a6b996;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.hd-outline{stroke:#bdcba9;stroke-width:2.8;filter:drop-shadow(0 0 3px rgba(183,203,164,.24))}.hd-folds{stroke:#93aa86;stroke-width:1.55}.hd-temporal{stroke:#acbd99;stroke-width:2.15}.hd-cerebellum{stroke:#9db18e;stroke-width:1.6}.hd-cerebellum>path:first-child{stroke-width:2.15}.hd-stem{stroke:#aab99a;stroke-width:2.4}.brain-clock:has(.hd-brain) path{animation:none;vector-effect:non-scaling-stroke}.office.winddown .brain-clock:has(.hd-brain),.office.closing .brain-clock:has(.hd-brain){filter:drop-shadow(0 18px 28px rgba(0,7,5,.4)) drop-shadow(0 0 15px rgba(184,197,158,.22))}.office.overdue .brain-clock:has(.hd-brain){opacity:.16;filter:blur(2px)}
@media(max-width:700px){.brain-clock:has(.hd-brain){top:5%;width:min(112vw,600px)}}
.brain-clock:has(.supplied-brain){top:7%;width:clamp(500px,58vw,780px);opacity:1;transform:translateX(-50%);filter:drop-shadow(0 14px 24px rgba(0,0,0,.42))}.supplied-brain{filter:invert(1);opacity:.82}.office.overdue .brain-clock:has(.supplied-brain){opacity:.14;filter:blur(2px)}@media(max-width:700px){.brain-clock:has(.supplied-brain){top:7%;width:min(105vw,620px)}}

/* Time-driven orbital layer around the supplied brain */
.brain-orbits{fill:none;stroke:rgb(calc(102 + var(--session-warmth) * 136),calc(180 + var(--session-warmth) * 34),calc(192 - var(--session-warmth) * 94));stroke-width:2}.brain-orbits>ellipse{opacity:calc(.06 + var(--session-progress) * .24);stroke-dasharray:10 18}.brain-orbits>path{opacity:calc(.025 + var(--session-progress) * .1)}.orbit-particles circle{fill:rgb(calc(145 + var(--session-warmth) * 105),calc(220 + var(--session-warmth) * 20),calc(229 - var(--session-warmth) * 120));stroke:none;opacity:clamp(0,calc((var(--session-progress) - var(--threshold)) * 8),.95);filter:drop-shadow(0 0 calc(6px + var(--session-progress) * 15px) rgba(196,224,216,.85))}.office.winddown .orbit-particles circle,.office.closing .orbit-particles circle{filter:drop-shadow(0 0 18px rgba(244,193,99,.9))}

/* Five smooth console-style waves, increasing in intensity over time */
.flow-lines{display:block;left:-12%;right:-12%;bottom:-10%;height:42%;opacity:1;filter:none;transform:none}.flow-lines i,.flow-lines i:nth-child(2),.flow-lines i:nth-child(3){top:calc(var(--wave) * 9%);left:calc(-4% + var(--wave) * 2%);width:108%;height:78%;border:0;border-top:2px solid rgb(calc(75 + var(--session-warmth) * 164),calc(152 + var(--session-warmth) * 45),calc(176 - var(--session-warmth) * 81));border-radius:44% 56% 0 0/30% 42% 0 0;opacity:clamp(0,calc((var(--session-progress) - var(--threshold)) * 8),calc(.18 + var(--session-progress) * .34));box-shadow:0 -10px 30px rgba(63,146,171,calc(.02 + var(--session-progress) * .06));animation:attune-flow calc(11s + var(--wave) * 1.7s) ease-in-out infinite alternate;animation-direction:alternate}.office.winddown .flow-lines i,.office.closing .flow-lines i{box-shadow:0 -12px 34px rgba(229,171,82,.13)}

/* Prevent state labels from colliding */
.phase-tracker{width:min(620px,calc(100vw - 250px))}.phase-state span{white-space:nowrap}.phase-state:nth-child(4){transform:translateX(-62%)}.phase-state:nth-child(5){transform:translateX(-100%)}
@media(max-width:700px){.phase-tracker{width:calc(100vw - 112px)}.phase-state:nth-child(2),.phase-state:nth-child(3),.phase-state:nth-child(4){transform:translateX(-50%)}.phase-state span{font-size:6px}}

/* Final Office Mode composition cleanup */
.brain-clock:not([data-view="side"]){opacity:0}.brain-clock:has(.supplied-brain){top:11%;width:clamp(340px,42vw,560px)}.office-content{margin-top:clamp(330px,48vh,500px)}.clean-orbits{stroke-width:2.2}.clean-orbits>path{stroke-dasharray:calc(7px + var(--orbit) * 2px) calc(20px + var(--orbit) * 4px);opacity:calc(.05 + var(--session-progress) * .2)}.phase-tracker{width:min(620px,calc(100vw - 250px))}.phase-states{display:block;position:relative;height:32px}.phase-state,.phase-state:nth-child(1),.phase-state:nth-child(2),.phase-state:nth-child(3),.phase-state:nth-child(4),.phase-state:nth-child(5){position:absolute;top:0;transform:translateX(-50%);text-align:center}.phase-state:nth-child(1){left:0;transform:none;text-align:left}.phase-state:nth-child(2){left:25%}.phase-state:nth-child(3){left:50%}.phase-state:nth-child(4){left:75%}.phase-state:nth-child(5){left:100%;transform:translateX(-100%);text-align:right}.phase-state i{margin-left:auto;margin-right:auto}.phase-state:nth-child(1) i{margin-left:0}.phase-state:nth-child(5) i{margin-left:auto;margin-right:0}.phase-state span{white-space:nowrap}.phase-state small{text-align:center}.phase-state:nth-child(1) small{text-align:left}.phase-state:nth-child(5) small{text-align:right}
@media(max-width:700px){.brain-clock:has(.supplied-brain){top:12%;width:min(72vw,420px)}.office-content{margin-top:clamp(290px,43vh,410px)}.phase-tracker{width:calc(100vw - 112px)}.phase-state span{font-size:6px}}
