.customer-page{background:#f6f8f1}.customer-header{max-width:1240px;margin:auto;padding:24px;display:flex;justify-content:space-between;gap:20px;align-items:center}.customer-header .brand{color:#214735}.customer-header .brand small{color:#60765d}.customer-header nav{display:flex;gap:22px;align-items:center;flex-wrap:wrap;font-size:13px}.customer-header nav a{text-decoration:none}.customer-pilot{padding:13px 24px;text-align:center;background:#f9efdc;color:#7d6134;font-size:12px;line-height:1.6}.customer-main{max-width:1180px;margin:35px auto;padding:0 24px}.customer-page.signed-out #main{display:none}.customer-main>h2{font-size:30px}.customer-main>p{max-width:750px}.customer-footer{max-width:1180px;margin:auto;padding:28px 24px;border-top:1px solid var(--line);display:block;font-size:12px}.customer-footer p{max-width:800px}.carer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.carer-card>img{display:block;width:100%;height:240px;object-fit:cover;object-position:center 25%;background:#e7eedf}.carer-card h3{font-size:23px;margin-bottom:8px}.carer-card p{font-size:14px}.skill-tags{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0}.skill-tags span{padding:6px 9px;border-radius:20px;background:#edf2e3;color:#496344;font-size:11px}.booking-steps{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0;font-size:12px}.booking-steps span{background:#e5edda;border-radius:8px;padding:12px}.booking-title{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.booking-title h2{font-size:20px}.booking-status{display:inline-block;padding:7px 10px;border-radius:6px;font-size:11px;font-weight:650;background:#f4ecd9;color:#805f27;white-space:normal}.status-approved{background:#e1eddb;color:#3c6431}.status-cancelled,.status-declined{background:#f1e6e1;color:#905441}.status-needs_info{background:#e1edf0;color:#286879}.booking-messages article{border-left:3px solid #b7cca1;margin:15px 0;padding:4px 15px}.booking-messages p{white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0;font-size:13px}.booking-messages small{color:#677563}.booking-check{display:flex;gap:12px;align-items:flex-start;font-size:12px;line-height:1.7}.booking-check input{width:20px;min-height:20px;flex-shrink:0;margin-top:4px}.carer-detail{display:flex;gap:20px;align-items:center}.carer-portrait{width:115px;height:140px;object-fit:cover;border-radius:14px;background:#e3ecd9}.booking-card .panel-body>p{font-size:13px}.booking-manager-tools{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.profile-preview{display:flex;gap:15px;align-items:center}.profile-preview img{width:90px;height:110px;object-fit:cover;border-radius:10px}.booking-private-note{background:#f0f3eb;padding:14px;border-radius:8px;font-size:12px}.booking-demo-switch{padding:15px;background:#dde8cc;display:flex;gap:18px;align-items:center;justify-content:center}.booking-demo-switch button{min-height:42px}.booking-wrap{white-space:normal;min-width:210px}@media(max-width:900px){.carer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-header{align-items:flex-start}.customer-header nav{gap:12px}}@media(max-width:600px){.carer-grid{grid-template-columns:1fr}.customer-header{padding:19px 16px;flex-direction:column}.customer-header nav{gap:18px;font-size:12px}.customer-main{padding:0 16px;margin-top:25px}.booking-title{flex-direction:column}.carer-card>img{height:260px}.customer-page .auth-screen{padding:20px 16px}.carer-detail{align-items:flex-start}.carer-portrait{width:90px;height:115px}.customer-main .page-heading{flex-direction:column}.booking-demo-switch{flex-wrap:wrap}}

.customer-page [hidden]{display:none!important}

/* Customer pages do not inherit the staff workspace's viewport-height layout. */
.customer-page .auth-screen{min-height:0;max-width:1180px;padding:48px 24px 24px;gap:48px;align-items:start}
.customer-page .auth-brand h1{margin-top:12px;font-size:clamp(30px,3.6vw,44px);max-width:590px}
.customer-page .auth-screen .panel{max-width:none;margin:0}
.customer-page .customer-main{min-height:0;margin:32px auto;padding:0 24px}
.customer-page #main:empty{display:none}
.customer-page .carer-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:stretch;gap:20px}
.customer-page .carer-card{display:flex;flex-direction:column;margin-bottom:0}
.customer-page .carer-card .panel-body{display:flex;flex-direction:column;flex:1;padding:22px}
.customer-page .carer-card .button-row{margin-top:auto;padding-top:10px}
.customer-page .carer-card h3{margin:0 0 8px}
.customer-page .carer-card .skill-tags{margin:10px 0 14px;min-height:30px}
.customer-page .carer-card .hint{margin-bottom:0}
.customer-page .carer-card .button-row button{flex:1;white-space:normal}
.customer-page .carer-grid>section{grid-column:1/-1}
.customer-page .customer-footer{margin-top:40px}
.customer-page .customer-main .page-heading{margin-bottom:22px}
.customer-page #demo-review{margin-top:24px}
@media(max-width:800px){.customer-page .auth-screen{grid-template-columns:1fr;gap:24px;padding:28px 20px 12px}.customer-page .auth-brand{padding-top:0}.customer-page .auth-screen .panel{max-width:600px}.customer-page .customer-main{padding:0 20px;margin:28px auto}.customer-page .carer-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}
@media(max-width:600px){.customer-page .auth-screen{padding:24px 16px 8px}.customer-page .customer-main{padding:0 16px;margin:24px auto}.customer-page .carer-grid{grid-template-columns:1fr}.customer-page .carer-card .panel-body{padding:18px}.customer-page .customer-main h1{font-size:30px}.customer-page .customer-header nav{gap:14px}.customer-page .customer-footer{padding:24px 16px;margin-top:28px}}

.customer-page .carer-card{max-width:420px;width:100%}.customer-page .carer-card>img{height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center 25%}

.customer-page .carer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.customer-page .carer-card{max-width:none}@media(max-width:900px){.customer-page .carer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.customer-page .carer-grid{grid-template-columns:1fr}}
