/* Shared visual refinement. Existing page structure, actions and state remain authoritative. */
:root{--surface-white:#fff;--surface-soft:#f2f8fa;--surface-line:#cedfe5;--readable-ink:#263c48;--quiet-ink:#506670;--space-section:clamp(38px,5vw,72px)}
main :is(h1,h2,h3){text-wrap:balance}
main :is(p,li,dd){text-wrap:pretty}
.public-site{background:#fbfdfd}
.public-site.home-page{background:#f7fafb}
.public-site :is(.page-intro,.browse-intro,.planning-heading,.enquiry-intro) h1{font-size:clamp(32px,3.7vw,52px);line-height:1.12;letter-spacing:-.035em;max-width:22ch}
.public-site .property-intro h1{font-size:clamp(31px,3.3vw,47px);line-height:1.13;letter-spacing:-.03em}
.public-site :is(.page-intro,.browse-intro,.enquiry-intro){padding-top:clamp(28px,4vw,52px);padding-bottom:30px}
.public-site :is(.page-intro,.enquiry-intro)>p:last-child,.public-site .browse-intro>div>p:last-child{max-width:68ch;font-size:16px;line-height:1.8;color:var(--quiet-ink)}
.public-site .section-heading{gap:24px;margin-bottom:28px}
.public-site .section-heading h2{font-size:clamp(25px,2.5vw,35px);line-height:1.22;letter-spacing:-.03em;margin-bottom:10px}
.public-site .section-heading p{max-width:65ch;font-size:15px;line-height:1.8;color:var(--quiet-ink)}
.public-site :is(.property-about,.property-section,.help-card,.account-panel) p{line-height:1.8}
.public-site .page-intro+.section{padding-top:14px}
.public-site .surface-section{background:#fff;border-block:1px solid #e1ecef;padding-block:var(--space-section);margin-top:30px}
.home-page .home-destinations{padding-bottom:var(--space-section)}
.home-page .home-stays{margin-top:0}
.public-site .booking-strip{margin-block:var(--space-section);padding:clamp(24px,4vw,44px);background:linear-gradient(120deg,#eaf5f7,#f7fafb);border:1px solid #cfe3e8;border-radius:28px}
.public-site .booking-strip>h2{font-size:clamp(25px,2.5vw,34px);letter-spacing:-.025em;margin-bottom:28px}
.public-site .booking-strip .steps{gap:28px}
.public-site .booking-strip h3{font-size:16px;line-height:1.6}
.public-site .booking-strip p{font-size:14px;line-height:1.8;color:var(--quiet-ink)}
.public-site .similar-section{background:#f0f7f9;border:1px solid #dbe9ed;border-radius:26px;padding:clamp(22px,3vw,36px);margin-block:var(--space-section)}
.public-site .property-section+.property-section{margin-top:32px;padding-top:30px}
.public-site .property-section h2{font-size:27px;margin-bottom:22px}
.public-site .help-card{background:linear-gradient(150deg,#fff,#f0f8fa);box-shadow:0 8px 26px #23424e05}

/* Group search choices visually, retaining native date/select controls and GET submission. */
.public-site .search-form .search-bar{padding:8px;border:1px solid #afcbd4;border-radius:18px;box-shadow:0 8px 25px #173b4708}
.public-site .search-bar>.field,.public-site .search-bar>.guest-picker{border-radius:11px;transition:background-color .18s,box-shadow .18s}
.public-site .search-bar>.field:focus-within,.public-site .search-bar>.guest-picker:focus-within{background:#eef8fa;box-shadow:inset 0 0 0 2px #288894}
.public-site .search-bar label,.public-site .guest-label{font-size:11px;line-height:1.5;letter-spacing:.02em;font-weight:700;color:#254d59}
.public-site .search-bar .field input{background:transparent;border:0;border-radius:5px;box-shadow:none;min-height:40px;line-height:1.4;padding:3px 0}
.public-site .search-bar>.button{background:#1c1c28;color:white;border-color:#1c1c28;border-radius:12px;box-shadow:0 4px 10px #1c1c2815;font-size:13px;padding-inline:23px}
.public-site .search-bar>.button:hover{background:#284b57;border-color:#284b57}
.public-site .guest-picker>summary{min-height:66px;padding:10px 15px}
.public-site .guest-picker[open]>summary{background:#eaf6f8;border-radius:11px}
.public-site .guest-options{border-color:#a7cbd4;border-radius:16px;box-shadow:0 12px 32px #173c4914}
.public-site .search-filters{margin-top:16px;border-top:1px solid #d9e7eb;padding-top:5px}
.public-site .search-filters>summary{min-height:48px;padding-block:12px;font-size:13px;font-weight:600;color:#335766}
.public-site .search-filters[open]{background:#f5fafb;border-radius:14px;padding:12px 16px;margin-top:15px}
.public-site .search-filters .filter-fields{gap:18px}
.public-site .home-hero .search-form{border-color:#ffffffd9;box-shadow:0 20px 55px #102c462b}
.public-site .home-hero .search-bar{border:0;box-shadow:none;padding:0}

/* Inputs, validation and saved-state feedback share the same visual hierarchy. */
main :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),select,textarea){border-radius:11px;border-color:#afc5ce;line-height:1.5;transition:border-color .18s,background-color .18s,box-shadow .18s}
main :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),select){min-height:48px}
main textarea{padding:13px 14px;resize:vertical}
main :is(input,select,textarea):focus-visible{outline:3px solid #238390;outline-offset:3px}
main :is(input,select,textarea)[aria-invalid=true]{border:2px solid #a63d50!important;background:#fff7f8!important}
main :is(input,textarea)[readonly]{background:#f1f6f8;color:#415c68}
main :is(label,.field>label){line-height:1.6}
main :is(.field-hint,.hint,.intake-hint){line-height:1.75;color:#526a74}
main :is(.field-error,.intake-field-error){font-size:12px;line-height:1.7;font-weight:600;color:#912c40;margin-top:8px}
main :is(.notice,.intake-notice,.error-summary){border-radius:15px;line-height:1.75;box-shadow:none}
main :is(.notice,.intake-notice){border-left-width:4px}
main :is(.error-summary,.notice.error,.intake-notice.error){border:1px solid #e1bec6;border-left:4px solid #a33c51;background:#fff5f7;color:#78263a;padding:20px 22px}
main :is(.notice.success,.intake-notice.success){border-color:#b1d6c7;border-left-color:#34755d;background:#eef8f3;color:#285742}
main .notice.warning{border-color:#e6c78d;border-left-color:#a06c21;background:#fff8e9;color:#71501f}
main .error-summary h2{font-size:18px;line-height:1.4;margin:0 0 10px}
main .error-summary ul{margin:0;padding-left:20px}
main .error-summary li+li{margin-top:6px}
main .error-summary a{color:inherit;text-underline-offset:3px}
.intake-form>[role=status]{padding:12px 15px;background:#eef8fa;border:1px solid #c6dfe6;border-radius:12px;font-size:12px}
.intake-card,.intake-summary{border-radius:20px;border-color:#d2e2e7;box-shadow:0 7px 24px #274a5305}
.intake-page{background:linear-gradient(180deg,#f1f8fa,#fcfdfd 550px)}
.intake-heading h1{font-size:clamp(33px,4vw,49px);line-height:1.15;letter-spacing:-.03em}
.intake-steps ol{border-radius:16px;border-color:#c4dce3}
.intake-steps a[aria-current]{background:#e1f2f5;box-shadow:inset 0 -3px #238390}
.intake-step small,.intake-hint{line-height:1.7}

/* A calmer workspace: keep the same compact navigation and the existing task counts. */
.workspace{background:#f4f8fa}
.workspace main#main{padding-top:36px}
.workspace .page-heading{padding-bottom:24px;border-bottom:1px solid #d9e6eb;margin-bottom:26px}
.workspace .page-heading h1{font-size:clamp(29px,3vw,39px);line-height:1.15;letter-spacing:-.025em}
.workspace .subtitle{font-size:14px;line-height:1.75;max-width:68ch}
.workspace .panel{border-color:#d1e1e7;border-radius:20px;box-shadow:0 8px 26px #24445105}
.workspace .panel-heading{background:#f6fafb;padding-block:19px;border-bottom-color:#dbe8ec}
.workspace .panel-heading h2{font-size:17px;line-height:1.5}
.workspace .daily-start{gap:12px;margin-bottom:26px}
.workspace .daily-start .button{border-radius:13px}
.workspace .daily-work{overflow:hidden}
.workspace .daily-work .panel-heading{background:#edf6f8}
.workspace .daily-task{gap:18px;padding:22px 24px;min-height:92px;text-decoration:none}
.workspace .daily-task:hover,.workspace .daily-task:focus-visible{background:#edf8fa}
.workspace .daily-task strong{font-size:15px;line-height:1.5}
.workspace .daily-task small{font-size:12px;line-height:1.7;color:#506874;margin-top:5px}
.workspace .daily-task .attention-count{min-width:34px;min-height:34px;background:#dff1f4;color:#155264;border:1px solid #a9d4df;font-variant-numeric:tabular-nums}
.workspace .daily-task>span:last-child{font-size:20px;color:#356b7a}
.workspace .daily-help{font-size:13px;line-height:1.8;margin-top:23px}
.workspace .daily-history{border:1px solid #d5e4e9;background:#fff;border-radius:16px;overflow:hidden}
.workspace .daily-history>summary{min-height:52px;padding:15px 20px;font-weight:600;background:#f6fafb}
.workspace :is(.responsive-table,.table-wrap){border-radius:14px}
.workspace table{font-variant-numeric:tabular-nums}
.workspace th{background:#f0f6f8;color:#4a616f;font-size:11px;font-weight:650;letter-spacing:.035em;line-height:1.7;padding-block:16px}
.workspace td{padding-block:17px;line-height:1.7;border-bottom-color:#e1ebee}
.workspace tbody tr:nth-child(even){background:#fbfdfd}
.workspace tbody tr:hover{background:#eff8fa}
.workspace .badge{border:1px solid #cddbe2;background:#f0f5f7;color:#425b69;line-height:1.6;padding:5px 10px;font-weight:650}
.workspace .badge.active{border-color:#b4d9c9;background:#eef8f2;color:#2c674d}
.workspace .badge:is([data-record-state=pending_review],[data-record-state=open]){border-color:#e4cc9a;background:#fff8e9;color:#795619}
.workspace .badge:is([data-record-state=in_review],[data-record-state=offered],[data-record-state=approved]){border-color:#b7d6e8;background:#eef7fc;color:#2e607d}
.workspace .badge:is([data-record-state=confirmed],[data-record-state=converted],[data-record-state=accepted],[data-record-state=resolved]),.workspace .badge.recent-badge{border-color:#acd6c6;background:#eaf7f0;color:#276149}
.workspace .badge:is([data-record-state=failed],[data-record-state=declined]){border-color:#e4c0ca;background:#fff3f6;color:#8a3348}
.workspace .record-tabs,.workspace .booking-navigation{gap:8px}
.workspace .record-tabs a{border-radius:10px}

/* One footer hierarchy on every customer page; display only configured contact information. */
.public-site .site-footer{background:#1c1c28;color:#ccd9df;border:0;margin-top:0;border-radius:30px 30px 0 0}
.public-site .footer-main{display:grid;grid-template-columns:minmax(230px,.9fr) minmax(0,1.7fr);gap:clamp(35px,6vw,90px);padding-block:55px 40px;align-items:start}
.public-site .footer-intro img{display:block;width:200px;height:auto;max-width:100%}
.public-site .footer-intro>p{font-size:15px;line-height:1.8;margin:18px 0 0;color:#f0f6f8}
.public-site .footer-intro .footer-explainer{font-size:12px;line-height:1.9;color:#bccdd4;margin-top:12px}
.public-site .footer-intro .footer-action{display:inline-flex;gap:30px;align-items:center;min-height:46px;padding:10px 17px;border:1px solid #80adb9;border-radius:12px;font-size:12px;font-weight:600;color:#eefaff;text-decoration:none;margin-top:23px;background:#27444e}
.public-site .footer-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;min-width:0}
.public-site .footer-group{display:flex;flex-direction:column;align-items:start;min-width:0}
.public-site .footer-group h2{color:#8fcbd6;font:650 11px/1.6 Inter,system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase;margin:7px 0 18px}
.public-site .footer-group a{font-size:12px;line-height:1.65;min-height:42px;padding:8px 0;color:#e2ebef;text-decoration:none}
.public-site .site-footer a:hover{color:#7dd6e2;text-decoration:underline;text-underline-offset:5px}
.public-site .site-footer a:focus-visible{outline-color:#70d6e0}
.public-site .footer-bottom{border-top:1px solid #3f525d;padding-block:17px 22px;gap:12px 20px;flex-wrap:wrap;font-size:11px;color:#bccdd4}
.public-site .footer-bottom a{color:#e2ebef;min-height:44px}

/* The native dialog provides focus containment and background inertness. */
.property-visual .gallery .photo-card{position:relative}
.property-visual .photo-open{position:absolute;inset:0;z-index:2;width:100%;height:100%;border:0;border-radius:inherit;padding:0;background:transparent;color:#fff;cursor:zoom-in}
.photo-open>span{position:absolute;right:14px;bottom:14px;padding:9px 13px;border:1px solid #ffffff80;border-radius:40px;background:#163743db;font-size:11px;font-weight:600;box-shadow:0 3px 15px #132a351a}
.photo-open:hover>span{background:#1c1c28}
.photo-open:focus-visible{outline:3px solid #1a8192;outline-offset:4px;box-shadow:inset 0 0 0 5px #fff}
html.photo-viewer-open{overflow:hidden;overscroll-behavior:none}
.photo-viewer:not([open]){display:none}
.photo-viewer{box-sizing:border-box;position:fixed;inset:0;margin:0;width:100%;height:100vh;height:100dvh;max-width:none;max-height:none;padding:0;border:0;background:#142933;color:#eef6f8;overflow:hidden}
.photo-viewer::backdrop{background:#0c202bea;backdrop-filter:blur(12px)}
.photo-viewer-shell{box-sizing:border-box;width:min(1280px,100%);height:100%;margin:auto;display:flex;flex-direction:column;gap:12px;padding:max(22px,env(safe-area-inset-top)) 28px max(18px,env(safe-area-inset-bottom));min-height:0}
.photo-viewer-top{display:flex;gap:24px;align-items:center;justify-content:space-between;flex-shrink:0}
.photo-viewer-top>div{min-width:0}
.photo-viewer-top p{font-size:9px;letter-spacing:.13em;color:#9dc8d5;margin:0 0 5px;line-height:1.5}
.photo-viewer-top h2{color:inherit;font-size:clamp(16px,2vw,24px);line-height:1.3;margin:0;font-weight:500;max-height:2.6em;overflow:auto}
.photo-viewer button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:46px;min-width:46px;padding:8px;border:1px solid #6c929f;border-radius:13px;background:#244550;color:#fff;cursor:pointer;box-shadow:none;transition:background-color .18s,border-color .18s}
.photo-viewer button:hover{background:#38606c;border-color:#a5d2dd}
.photo-viewer button:focus-visible{outline:3px solid #6ee0ed;outline-offset:3px}
.photo-viewer-close{font-size:28px;line-height:1}
.photo-viewer-stage{position:relative;display:flex;align-items:center;justify-content:center;flex:1;min-height:90px;min-width:0;overflow:hidden;background:#0e2028;border:1px solid #45616c;border-radius:22px;touch-action:pan-y pinch-zoom}
.photo-viewer-stage img{display:block;width:100%;height:100%;object-fit:contain;max-height:100%;border-radius:20px}
.photo-viewer-message{position:absolute;inset:auto 20px;text-align:center;font-size:14px;line-height:1.8;color:#e5f1f5}
.photo-viewer-caption{display:flex;justify-content:space-between;gap:20px;align-items:start;flex-shrink:0;padding-inline:4px;max-height:12vh;overflow:auto}
.photo-viewer-caption p{font-size:12px;line-height:1.7;color:#d6e6ec;margin:0;max-width:85ch}
.photo-viewer-caption [data-photo-count]{white-space:nowrap;color:#9bd6e0;font-variant-numeric:tabular-nums}
.photo-viewer-controls{display:flex;align-items:center;justify-content:center;gap:18px;flex-shrink:0}
.photo-viewer-controls button{font-size:23px}
.photo-viewer-controls p{font-size:11px;text-align:center;line-height:1.6;color:#abc6d0;margin:0}
.photo-viewer-thumbnails{display:flex;gap:10px;overflow-x:auto;overscroll-behavior:contain;padding:5px 4px 8px;flex-shrink:0;min-width:0;scrollbar-color:#608996 #142933}
.photo-viewer-thumbnails button{width:80px;height:60px;min-height:60px;padding:3px;border:2px solid transparent;background:#213e4a;border-radius:11px}
.photo-viewer-thumbnails button[aria-current=true]{border-color:#67d8e5;background:#38636f}
.photo-viewer-thumbnails img{width:100%;height:100%;object-fit:cover;border-radius:6px}
.photo-viewer-demo{color:#a9c4ce;font-size:10px;line-height:1.5;margin:0;text-align:center;flex-shrink:0}
@media(max-width:1100px){.public-site .search-bar>.button{padding-inline:17px}.public-site .footer-main{gap:38px;grid-template-columns:minmax(210px,.8fr) minmax(0,1.4fr)}.public-site .footer-links{gap:18px}}
@media(max-width:760px){
 .public-site :is(.page-intro,.browse-intro,.enquiry-intro){padding-top:28px;padding-bottom:22px}
 .public-site :is(.page-intro,.enquiry-intro)>p:last-child,.public-site .browse-intro>div>p:last-child{font-size:14px;line-height:1.8}
 .public-site .section-heading{gap:16px;margin-bottom:24px}.public-site .section-heading p{font-size:14px}
 .public-site .booking-strip{padding:25px 22px;border-radius:22px}.public-site .booking-strip .steps{gap:22px}
 .public-site .search-form .search-bar{padding:8px;gap:12px}.public-site .home-hero .search-bar{padding:0}
 .public-site .search-bar>.field{border:1px solid #bfd4dc;padding:9px 11px}
 .public-site .search-bar>.guest-picker{border:1px solid #bfd4dc}.public-site .guest-picker>summary{min-height:59px}
 .public-site .search-bar>.button{min-height:52px;margin:0}
 .public-site .search-filters[open]{padding:8px 12px}.public-site .search-filters>summary{font-size:12px}
 main :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),select,textarea){font-size:16px}
 .public-site .search-bar .field input{font-size:16px}.public-site .search-bar .field input[type=date]{font-size:14px}
 .workspace main#main{padding-top:26px}.workspace .page-heading{padding-bottom:20px;margin-bottom:22px}
 .workspace .daily-task{padding:20px 18px;gap:12px}.workspace .daily-task strong{font-size:14px}.workspace .daily-task small{font-size:12px}
 .workspace .daily-start{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.workspace .daily-start .button{padding-inline:10px;font-size:12px}
 .public-site .footer-main{grid-template-columns:1fr;gap:32px;padding-block:36px 26px}.public-site .footer-links{gap:18px}
 .public-site .footer-intro{max-width:380px}.public-site .footer-intro>p{font-size:14px}.public-site .footer-intro img{width:180px}
 .public-site .footer-bottom{font-size:10px;justify-content:flex-start;gap:8px 20px}.public-site .footer-bottom>span:nth-child(2){flex-basis:100%;order:-1}
 .photo-viewer-shell{padding:16px 14px max(12px,env(safe-area-inset-bottom));gap:10px}.photo-viewer-top{gap:12px}
 .photo-viewer-stage{border-radius:17px}.photo-viewer-stage img{border-radius:15px}.photo-viewer-caption{gap:12px}.photo-viewer-caption p{font-size:11px}
 .photo-viewer-controls{gap:13px}.photo-viewer-thumbnails button{width:64px;height:49px;min-height:49px}.photo-viewer-demo{font-size:9px}
}
@media(max-width:480px){.public-site .footer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}.public-site .footer-group h2{margin-bottom:10px}.public-site .footer-group a{font-size:11px}.public-site .footer-bottom .back-top{margin-left:auto}}
@media(max-width:480px){.public-site .search-filters .filter-fields{grid-template-columns:minmax(0,1fr)}}
@media(max-width:380px){.public-site .search-bar>.field:has(input[type=date]){grid-column:1/-1}.public-site .search-bar .field input[type=date]{font-size:16px}}
@media(max-height:560px){.photo-viewer-shell{gap:6px;padding-block:8px}.photo-viewer-top p,.photo-viewer-controls p,.photo-viewer-demo{display:none}.photo-viewer-top h2{font-size:16px;max-height:1.3em}.photo-viewer-top button{min-height:40px;min-width:40px}.photo-viewer-thumbnails{display:none}.photo-viewer-stage{min-height:65px}.photo-viewer-caption{max-height:10vh}.photo-viewer-controls{position:absolute;top:48%;left:22px;right:22px;justify-content:space-between;pointer-events:none}.photo-viewer-controls button{pointer-events:auto}}
@media(prefers-reduced-motion:reduce){.public-site .search-bar>*,main :is(input,select,textarea),.photo-viewer *{transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.photo-viewer{background:Canvas;color:CanvasText}.photo-viewer button[aria-current=true]{border:3px solid Highlight}.public-site .site-footer{background:Canvas;color:CanvasText}.public-site .site-footer :is(a,p,h2){color:CanvasText}}
@media print{.photo-viewer,.photo-open{display:none!important}.public-site .site-footer{display:none}.workspace main#main{background:white}.public-site .surface-section{border:0}}

/* Plain inner-page headings, aligned with the surrounding content and existing brand type. */
body:not(.home-page) .page-welcome{
 position:relative;min-width:0;padding:0;margin-block:clamp(28px,4vw,52px) 28px;
 border:0;border-radius:0;background:transparent;
 color:#1c1c28;box-shadow:none;gap:22px;
}
body:not(.home-page) .page-welcome>div{min-width:0}
body:not(.home-page) .page-welcome h1{font-size:clamp(30px,3.4vw,44px);font-weight:550;line-height:1.18;letter-spacing:-.03em;color:#1c1c28;max-width:25ch;margin:0 0 14px;overflow-wrap:anywhere;text-wrap:balance}
body:not(.home-page) .page-welcome p:not(.eyebrow):not(.intake-eyebrow){color:#50616d;font-size:15px;line-height:1.75;max-width:62ch;margin:0;text-wrap:pretty;overflow-wrap:anywhere}
body:not(.home-page) .page-welcome :is(.eyebrow,.intake-eyebrow){color:#52606e;font:550 10px/1.6 Inter,system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;overflow-wrap:anywhere}
body:not(.home-page) .page-welcome a:not(.button){color:#263852;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
body:not(.home-page) .page-welcome a:not(.button):hover{color:#087e89}
body:not(.home-page) .page-welcome .text-link{font-size:13px;min-height:44px;flex-shrink:0;align-self:flex-end}
body:not(.home-page) .page-welcome :is(a,button):focus-visible{outline:3px solid #087e89;outline-offset:4px}
body:not(.home-page) .page-welcome .button.secondary{background:#ffffffa6;color:#1c1c28;border-color:#1c1c2826;min-height:44px;flex-shrink:0}
body:not(.home-page) .page-welcome .button.secondary:hover{background:#fff;border-color:#80919d}
body:not(.home-page) .page-welcome--compact{margin:0 0 24px}
body:not(.home-page) .page-welcome.page-welcome--compact h1{font-size:clamp(27px,2.8vw,36px)}
body:not(.home-page) .page-welcome h2{color:#1c1c28;font-size:20px;line-height:1.4;font-weight:500;margin:0 0 14px;letter-spacing:-.02em}
body:not(.home-page) .page-welcome .badge{background:#ffffff80;border:1px solid #1c1c2826;color:#263852}
body:not(.home-page) .page-welcome .received-check{color:#087e89}
.public-site .page-welcome.enquiry-intro{max-width:none}
.public-site .property-intro .page-welcome .property-location{gap:8px;font-size:13px;line-height:1.7}
.public-site .property-intro .page-welcome .site-icon{flex-shrink:0;color:#52606e}
.public-site .account-card{max-width:560px}
.public-site .account-card .page-welcome{margin:0 0 26px}
.public-site .policy>.page-welcome{margin-top:0}
body .access-card>.page-welcome{margin-top:0}
body .error-page>.page-welcome{text-align:left}
@media(max-width:720px){
 body:not(.home-page) .page-welcome{margin-block:28px 24px;gap:18px}
 body:not(.home-page) .page-welcome h1{font-size:clamp(28px,7.5vw,34px);line-height:1.2;margin-bottom:12px;letter-spacing:-.025em}
 body:not(.home-page) .page-welcome p:not(.eyebrow):not(.intake-eyebrow){font-size:14px;line-height:1.7}
 body:not(.home-page) .page-welcome :is(.eyebrow,.intake-eyebrow){font-size:9px;letter-spacing:.08em;margin-bottom:10px}
 body:not(.home-page) .page-welcome .text-link{align-self:flex-start}
 body:not(.home-page) .page-welcome--compact{margin-top:0}
 body:not(.home-page) .page-welcome.page-welcome--compact h1{font-size:clamp(26px,7vw,32px)}
 body:not(.home-page) .page-welcome h2{font-size:18px}
 .public-site .page-welcome.browse-intro,.public-site .page-welcome.planning-heading,.public-site .page-welcome.section-heading{flex-direction:column;align-items:flex-start}
 .public-site .page-welcome.section-heading>.button{align-self:flex-start}
 .public-site .account-card{padding:22px}
 .public-site .account-card .page-welcome{margin:0 0 24px}
 .public-site .policy>.page-welcome{margin-top:0}
}
@media(forced-colors:active){body:not(.home-page) .page-welcome{color:CanvasText}body:not(.home-page) .page-welcome :is(h1,h2,p,a,.eyebrow,.intake-eyebrow){color:CanvasText}}
@media print{body:not(.home-page) .page-welcome{background:none;box-shadow:none;border:0;border-radius:0;padding:0 0 16px;margin:0 0 20px}body:not(.home-page) .page-welcome :is(h1,h2,p,a,.eyebrow,.intake-eyebrow){color:#111}body:not(.home-page) .page-welcome h1{font-size:28px}}

/* Useful reading before listings open; retain the existing hero, navigation and native forms. */
.public-site .launch-panel{display:flex;align-items:flex-start;gap:22px;border:1px solid var(--surface-line);border-radius:22px;background:var(--surface-soft);padding:clamp(22px,3vw,32px);min-width:0}
.public-site .launch-panel>.site-icon{width:44px;height:44px;flex:0 0 44px;padding:9px;border-radius:13px;background:#e0f0f2;color:#21626c}
.public-site .launch-panel>div{min-width:0}
.public-site .launch-panel :is(h2,h3){font-size:clamp(21px,2vw,27px);line-height:1.3;margin:0 0 10px;letter-spacing:-.02em}
.public-site .launch-panel p{font-size:14px;line-height:1.8;max-width:68ch;margin:0 0 18px;color:var(--quiet-ink)}
.public-site .launch-panel .button-row{justify-content:flex-start;margin:0;gap:12px 22px}
.public-site .launch-panel .text-link{display:inline-flex;align-items:center;min-height:44px;font-size:13px}
.public-site .catalogue-launch{margin:24px 0 10px}
.public-site .account-welcome{list-style:none}
.public-site .destination-directory-note{max-width:65ch;font-size:14px;line-height:1.8;color:var(--quiet-ink);margin:0 0 28px}
.public-site .destination-directory .destination-copy>div{min-width:0}
.public-site .destination-directory .destination-copy h2{font-size:22px;line-height:1.25;margin:0 0 6px;letter-spacing:-.025em;overflow-wrap:anywhere}
.public-site .destination-directory .destination-copy small{display:inline-block;margin-top:5px;color:#315c65;font-weight:600}
.public-site .how-overview{max-width:1200px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:28px}
.public-site .how-overview article{min-width:0;margin:0;padding:25px;gap:18px;border-radius:20px}
.public-site .how-overview article>div{min-width:0}
.public-site .how-overview h2{font-size:21px;line-height:1.3;margin-bottom:10px}
.public-site .how-overview p{line-height:1.8}
@media(max-width:720px){
 .public-site .launch-panel{gap:14px;border-radius:18px;padding:22px 18px}
 .public-site .launch-panel>.site-icon{width:34px;height:34px;flex-basis:34px;padding:7px;border-radius:10px}
 .public-site .launch-panel p{font-size:13px;margin-bottom:14px}
 .public-site .launch-panel .button-row{align-items:stretch;flex-direction:column;gap:8px}
 .public-site .launch-panel .button{width:100%;text-align:center}
 .public-site .launch-panel .text-link{justify-content:flex-start}
 .public-site .how-overview{grid-template-columns:1fr;gap:12px;margin-bottom:18px}
 .public-site .how-overview article{padding:20px 18px;gap:14px}
 .public-site .destination-directory-note{font-size:13px;margin-bottom:22px}
 .public-site .destination-directory .destination-copy h2{font-size:19px}
 .public-site .destination-directory .destination-copy .stay-arrow{display:none}
}
@media(forced-colors:active){.public-site .launch-panel{background:Canvas;border-color:CanvasText}.public-site .launch-panel>.site-icon{background:Canvas;color:CanvasText}}

/* Authenticated SASleeps workspaces. Original implementation from the supplied
   video reference: a floating rail/dock and layered frosted panels.
   The existing approved coastal image supplies real detail behind the glass. */
body.dashboard-glass {
    --glass-ink: #1c1c28;
    --glass-muted: #1e3442;
    --muted: #1e3442;
    --glass-edge: #ffffffc7;
    --glass-paper: #edf5f7;
    --glass-sheet: #e4eef1;
    --glass-nav: #e8f8fa;
    --glass-sheen: linear-gradient(135deg,#ffffff52,transparent 45%,#1ec1cb08);
    --glass-shadow: 0 10px 28px #101d3024, inset 0 1px 0 #ffffffe6, inset 0 -1px 0 #ffffff47;
    color: var(--glass-ink);
    min-height: 100vh;
    background-color: #1c1c28;
    background-image: linear-gradient(110deg,#1c1c28a8,#15465570 55%,#1c1c286b),
        url('/website-assets/coastal-hero.webp');
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
}
.dashboard-glass :is(a,button,summary,input,select,textarea):focus-visible {
    outline: 3px solid #066a77;
    outline-offset: 4px;
}
.dashboard-glass .site-icon { flex-shrink: 0; }
.dashboard-glass :is(input,textarea,select)::placeholder { color: #3a5361; opacity: 1; }
.dashboard-glass :is(.glass-overview,.glass-metric-grid,.workspace-lower,.account-grid)>* { min-width: 0; }
.dashboard-glass :is(.button,.signout,.table-action) { border-radius: 999px; }
.dashboard-glass :is(.button,.nav-link,.workspace-dock>a,.account-nav>a,.glass-metric,.daily-task,.request-card) {
    transition: transform .22s ease,background-color .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.dashboard-glass :is(.button.primary,.account-nav>a[aria-current]) {
    color: #fff; background: #1c1c28; border-color: #1c1c28;
    box-shadow: 0 5px 14px #1c1c2826;
}
.dashboard-glass .button:not(.primary):not(.danger) { background-color: #f6ffffb5; }
.dashboard-glass--staff .workspace {
    display: block; max-width: 1520px; min-height: 100vh;
    margin: auto; padding: 24px 36px 100px 112px; background: transparent;
}
.dashboard-glass--staff .content-shell { min-width: 0; }
body.dashboard-glass--staff :is(.sidebar,.topbar)[data-scroll-nav] {
    background: transparent; border: 1px solid var(--glass-edge); box-shadow: var(--glass-shadow);
}
.dashboard-glass--staff :is(.sidebar,.topbar)[data-scroll-nav]::before {
    background: var(--glass-sheen),var(--glass-nav); opacity: 1; transform: none; border-radius: inherit;
}
.dashboard-glass--staff .sidebar {
    position: fixed; left: max(20px,calc((100vw - 1520px)/2 + 22px)); top: 50%;
    width: 64px; height: auto; min-height: 0; max-height: calc(100dvh - 36px);
    transform: translateY(-50%); border-radius: 999px; padding: 13px 9px;
    display: flex; flex-direction: column; align-items: center; gap: 14px; overflow: visible;
}
.dashboard-glass--staff .rail-brand { display: grid; place-items: center; width: 44px; min-height: 44px; padding: 5px; }
.dashboard-glass--staff .rail-brand img { display: block; width: 32px; height: 32px; object-fit: contain; }
.dashboard-glass--staff .sidebar>.nav-caption { display: none; }
.dashboard-glass--staff .sidebar>nav { display: grid; gap: 9px; margin: 0; width: 100%; }
.dashboard-glass--staff .sidebar>nav>.nav-link {
    position: relative; display: grid; place-items: center; padding: 0;
    width: 44px; min-height: 44px; border: 1px solid transparent; border-radius: 50%;
    color: #1c1c28; margin: 0; background: transparent;
}
.dashboard-glass--staff .sidebar>nav>.nav-link.selected {
    background: #1c1c28; color: #fff; box-shadow: 0 4px 14px #1c1c2833;
}
.dashboard-glass--staff .sidebar>nav>.nav-link.selected::before { display: none; }
.dashboard-glass--staff .sidebar .nav-count {
    position: absolute; right: -5px; top: -5px; min-width: 23px; min-height: 23px;
    padding: 1px 4px; border-radius: 12px; font-size: 11px; background: #c3f1f2; color: #1c1c28;
}
.dashboard-glass--staff .sidebar>nav .nav-label,
.dashboard-glass--staff .sidebar>form .nav-label,
.dashboard-glass--staff .sidebar .nav-tools>summary .nav-label {
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip-path: inset(50%); white-space: nowrap;
}
.dashboard-glass--staff .sidebar>nav>.nav-link::after {
    content: attr(data-rail-label); position: absolute; left: 56px; top: 50%;
    transform: translateY(-50%); padding: 7px 12px; border-radius: 10px;
    background: #1c1c28; color: #fff; font-size: 12px; white-space: nowrap;
    opacity: 0; pointer-events: none;
}
.dashboard-glass--staff .sidebar>nav>.nav-link:is(:hover,:focus-visible)::after { opacity: 1; }
.dashboard-glass--staff .sidebar .nav-tools { border: 0; margin: 0; padding: 0; width: 44px; }
.dashboard-glass--staff .nav-tools>summary { display: flex; align-items: center; gap: 9px; }
.dashboard-glass--staff .sidebar .nav-tools>summary {
    display: grid; place-items: center; width: 44px; min-height: 44px; padding: 0;
    border-radius: 50%; background: #ffffff50; list-style: none; color: #1c1c28;
}
.dashboard-glass--staff .sidebar .nav-tools>summary::-webkit-details-marker { display: none; }
.dashboard-glass--staff .sidebar .nav-tools[open]>summary { background: #1c1c28; color: #fff; }
.dashboard-glass--staff .sidebar .nav-tools>nav {
    position: absolute; left: 77px; top: -20px; width: 260px; max-height: min(640px,75dvh);
    padding: 18px; overflow-y: auto; border: 1px solid #fff; border-radius: 22px;
    background: #eff8faf5; box-shadow: 0 16px 50px #101d3040; display: grid; gap: 4px;
}
.dashboard-glass--staff .sidebar .nav-tools .nav-caption { display: block; margin: 13px 10px 5px; color: #233944; }
.dashboard-glass--staff .sidebar .nav-tools .nav-link { min-height: 44px; border-radius: 10px; font-size: 13px; }
.dashboard-glass--staff .sidebar>form { position: static; margin: 0; width: 44px; padding-top: 10px; border-top: 1px solid #718d9466; }
.dashboard-glass--staff .sidebar .signout { display: grid; place-items: center; width: 44px; min-height: 44px; padding: 0; background: #ffffff50; border: 0; }
.dashboard-glass--staff .topbar {
    position: relative; top: 0; height: auto; min-height: 66px; gap: 20px;
    padding: 10px 20px; border-radius: 999px;
}
.dashboard-glass--staff .workspace-brand { display: flex; align-items: center; flex-shrink: 0; }
.dashboard-glass--staff .workspace-brand .brand-mark { width: 125px; height: auto; }
.dashboard-glass--staff .workspace-search { flex: 1; max-width: 520px; min-width: 120px; gap: 6px; }
.dashboard-glass--staff .workspace-search input { flex: 1; min-width: 0; min-height: 44px; border-radius: 999px; background: #f8ffffb3; font-size: 14px; }
.dashboard-glass--staff .workspace-search .button { flex-shrink: 0; min-height: 44px; padding: 8px 16px; font-size: 13px; }
.dashboard-glass--staff .account { min-width: 0; max-width: 240px; font-size: 13px; }
.dashboard-glass--staff .account>span:last-child { min-width: 0; overflow-wrap: anywhere; }
.dashboard-glass--staff .account small { color: var(--glass-muted); font-size: 12px; }
.dashboard-glass--staff .account .avatar { background: #c6eff0; border-color: #ffffffa6; }
.dashboard-glass--staff .updates-menu { flex-shrink: 0; }
.dashboard-glass--staff .updates-menu>summary { border-radius: 999px; font-size: 13px; }
.dashboard-glass--staff .updates-popover { background: #f5fbfd; box-shadow: 0 20px 60px #1c1c2840; }
.dashboard-glass--staff .updates-popover :is(.updates-link,.button,.hint,.text-button) { font-size: 13px; }
.dashboard-glass--staff main#main {
    position: relative; max-width: none; min-height: calc(100dvh - 200px); margin: 20px 0 0;
    padding: 28px; background: var(--glass-sheen),var(--glass-sheet); border: 1px solid var(--glass-edge);
    border-radius: 30px; box-shadow: 0 30px 80px #101d3036, inset 0 1px 0 #ffffffe6, inset 0 -1px 0 #ffffff40;
}
.dashboard-glass--staff .workspace .page-heading { border: 0; padding: 0; margin-bottom: 24px; }
.dashboard-glass--staff .page-heading .brand-eyebrow { display: none; }
.dashboard-glass--staff .workspace .page-heading h1 { font-size: clamp(25px,2.3vw,34px); letter-spacing: -.04em; }
.dashboard-glass--staff .workspace .subtitle { margin-top: 8px; color: var(--glass-muted); font-size: 14px; line-height: 1.65; max-width: 72ch; }
.dashboard-glass--staff .workspace :is(.panel,.workflow-details,.stat-card),
.dashboard-glass :is(.glass-metric,.glass-actions,.account-panel,.request-card,.account-welcome,.support-list-item) {
    background: var(--glass-sheen),var(--glass-paper); border: 1px solid var(--glass-edge);
    box-shadow: var(--glass-shadow); border-radius: 20px;
}
.dashboard-glass--staff .workspace :is(.panel-heading,.workflow-details>summary) { background: #ffffff1a; border-color: #44667025; }
.dashboard-glass--staff .workspace .panel-heading { padding: 19px 21px; }
.dashboard-glass--staff .workspace .panel-heading h2 { font-size: 15px; }
.dashboard-glass--staff .workspace :is(.hint,.field-hint,.text-link) { color: var(--glass-muted); }
.dashboard-glass--staff .workspace .text-link { text-underline-offset: 3px; }
.dashboard-glass .glass-overview { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.15fr) minmax(0,.95fr); gap: 16px; align-items: stretch; }
.dashboard-glass .glass-metric {
    display: flex; flex-direction: column; min-width: 0; min-height: 122px;
    padding: 20px; color: var(--glass-ink); text-decoration: none;
}
.dashboard-glass .glass-metric-label { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 40px; font-size: 13px; font-weight: 600; line-height: 1.4; overflow-wrap: anywhere; }
.dashboard-glass .glass-metric-label .site-icon { width: 30px; height: 30px; padding: 6px; border: 1px solid #ffffffb3; border-radius: 50%; background: #1ec1cb24; color: #205563; }
.dashboard-glass .glass-metric>strong { font-size: 34px; line-height: 1.15; letter-spacing: -.04em; font-weight: 600; font-variant-numeric: tabular-nums; margin: 12px 0 8px; overflow-wrap: anywhere; }
.dashboard-glass .glass-metric-note { margin-top: auto; color: var(--glass-muted); font-size: 12px; line-height: 1.6; }
.dashboard-glass .glass-focus { padding: 24px; min-height: 280px; background: linear-gradient(135deg,#d9ffffc2,#f3ffff6b 65%,#1ec1cb26),var(--glass-paper); }
.dashboard-glass .glass-focus>strong { font-size: clamp(48px,5vw,66px); margin: 22px 0 12px; }
.dashboard-glass .glass-focus .glass-metric-label { font-size: 14px; }
.dashboard-glass .glass-focus .glass-metric-note { font-size: 14px; max-width: 24ch; margin: 0; }
.dashboard-glass .glass-focus .focus-action { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 22px; font-size: 13px; font-weight: 650; }
.dashboard-glass .glass-metric-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); grid-auto-rows: 1fr; gap: 12px; }
.dashboard-glass .glass-actions { padding: 24px; display: flex; flex-direction: column; }
.dashboard-glass .glass-actions h2 { font-size: 16px; line-height: 1.4; margin: 0 0 8px; }
.dashboard-glass .glass-actions>p { font-size: 13px; line-height: 1.6; color: var(--glass-muted); margin: 0 0 20px; }
.dashboard-glass .glass-actions .button { justify-content: space-between; gap: 12px; margin-top: 10px; min-height: 46px; font-size: 13px; text-align: left; white-space: normal; }
.dashboard-glass .workspace-lower { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(0,1fr); gap: 16px; margin-top: 20px; align-items: stretch; }
.dashboard-glass--staff :is(.daily-work,.daily-history) { max-width: none; margin: 0; }
.dashboard-glass--staff .workspace .daily-history { display: flex; border: 0; border-radius: 0; background: transparent; overflow: visible; }
.dashboard-glass--staff .daily-history>.recent-panel { flex: 1; min-width: 0; margin: 0; }
.dashboard-glass--staff .workspace-lower .panel-heading { min-height: 94px; align-items: flex-start; flex-wrap: wrap; gap: 8px 16px; }
.dashboard-glass--staff .workspace-lower .panel-heading :is(.hint,.text-link) { color: var(--glass-muted); font-size: 12px; line-height: 1.6; }
.dashboard-glass--staff .workspace-lower .empty-state { min-height: 156px; }
.dashboard-glass--staff .recent-item { padding: 18px 21px; border-color: #44667025; }
.dashboard-glass--staff .recent-item strong { font-size: 14px; }
.dashboard-glass--staff .recent-item :is(small,time) { font-size: 12px; line-height: 1.6; color: var(--glass-muted); }
.dashboard-glass--staff .workspace .daily-task { min-height: 78px; background: transparent; border-color: #44667025; padding: 18px 21px; }
.dashboard-glass--staff .daily-task small { color: var(--glass-muted); }
.dashboard-glass--staff .workspace .daily-task:hover { background: #ffffff45; }
.dashboard-glass--staff :is(.daily-task,.recent-item):focus-visible { outline-offset: -3px; }
.dashboard-glass--staff .daily-task .attention-count { border-radius: 50%; background: #e5fbfc; color: #1c1c28; }
.dashboard-glass--staff .empty-state { padding: 34px 24px; }
.dashboard-glass--staff .empty-state h3 { font-size: 14px; }
.dashboard-glass--staff .empty-state p { color: var(--glass-muted); font-size: 14px; line-height: 1.7; margin-bottom: 0; }
.dashboard-glass--staff .workspace .daily-help { color: var(--glass-muted); font-size: 13px; margin-top: 20px; }
.dashboard-glass--staff .daily-security { color: #1c1c28; }
.dashboard-glass--staff .workspace-footer { align-items: center; margin-top: 28px; padding-top: 22px; gap: 14px 24px; border-color: #44667033; color: var(--glass-muted); font-size: 12px; line-height: 1.6; }
.dashboard-glass .workspace-dock {
    position: fixed; left: calc(50% + 38px); bottom: max(18px,env(safe-area-inset-bottom)); transform: translateX(-50%);
    display: flex; align-items: center; gap: 5px; padding: 7px; z-index: 45; max-width: calc(100vw - 148px);
    background: var(--glass-sheen),var(--glass-nav); border: 1px solid var(--glass-edge); border-radius: 999px;
    box-shadow: 0 14px 40px #101d3036, inset 0 1px 0 #ffffffd9;
}
.dashboard-glass .workspace-dock>a { padding: 10px 14px; min-height: 44px; display: grid; place-items: center; border-radius: 999px; color: #1c1c28; font-size: 13px; font-weight: 600; text-decoration: none; white-space: nowrap; }
.dashboard-glass .workspace-dock>a[aria-current] { background: #1c1c28; color: #fff; box-shadow: 0 4px 12px #1c1c2833; }
.dashboard-glass .workspace-dock>.dock-add { width: 42px; padding: 0; border: 1px solid #fff; background: #d5f4f4; font-size: 24px; line-height: 1; }
.dashboard-glass #daily-work-heading { scroll-margin-top: 24px; }

/* Customers get the same glass canvas without changing their account or trip flows. */
.dashboard-glass--customer .preview-bar { background: #1c1c28e6; color: #fff; border: 0; }
body.dashboard-glass--customer .site-header[data-scroll-nav] { margin: 14px auto 0; width: calc(100% - 40px); max-width: 1360px; border: 1px solid var(--glass-edge); border-radius: 999px; background: transparent; box-shadow: var(--glass-shadow); }
.dashboard-glass--customer .site-header[data-scroll-nav]::before { background: var(--glass-sheen),var(--glass-nav); opacity: 1; transform: none; border-radius: inherit; }
.dashboard-glass--customer .account-wrap { max-width: 1160px; width: calc(100% - 40px); margin: 26px auto 50px; padding: 28px; border: 1px solid var(--glass-edge); border-radius: 30px; background: var(--glass-sheen),var(--glass-sheet); box-shadow: 0 30px 80px #101d3036, inset 0 1px 0 #ffffffe6; }
.dashboard-glass--customer .account-nav { display: flex; align-items: center; gap: 5px; width: fit-content; max-width: 100%; padding: 7px; margin: 0 auto 30px; border: 1px solid #fff; border-radius: 999px; background: var(--glass-paper); box-shadow: var(--glass-shadow); }
.dashboard-glass--customer .account-nav>a { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 10px 15px; border: 0; border-radius: 999px; font-size: 13px; font-weight: 600; text-decoration: none; }
.dashboard-glass--customer .account-nav form { margin-left: 6px; }
.dashboard-glass--customer .account-nav .button { min-height: 44px; }
.dashboard-glass--customer .account-wrap .workspace-page>.page-welcome { margin: 0 0 24px; padding: 4px 2px 0; background: transparent; border: 0; box-shadow: none; }
.dashboard-glass--customer .page-welcome h1 { color: var(--glass-ink); font-size: clamp(26px,3vw,36px); }
.dashboard-glass--customer .page-welcome p:not(.eyebrow) { color: var(--glass-muted); max-width: 68ch; }
.dashboard-glass--customer .account-list { gap: 16px; }
.dashboard-glass--customer .account-list>.request-card { padding: 23px; }
.dashboard-glass--customer .request-photo { box-shadow: 0 8px 20px #1c1c2824; }
.dashboard-glass--customer .request-photo-placeholder { background: #d6eef0; color: #205963; }
.dashboard-glass--customer .request-status { background: #dff5f5; border: 1px solid #fff; border-radius: 999px; }
.dashboard-glass--customer :is(.request-card-action small,.request-card-details dt,.request-status,.field-hint,.hint) { color: var(--glass-muted); font-size: 13px; line-height: 1.6; }
.dashboard-glass--customer .account-panel { padding: 26px; }
.dashboard-glass--customer .account-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; align-items: start; }
.dashboard-glass--customer .account-panel :is(input:not([type=checkbox]),textarea,select) { background-color: #fff; }
.dashboard-glass--customer .account-welcome { padding: 34px; }
.dashboard-glass--customer .account-list>.empty-state { background: var(--glass-paper); border-color: var(--glass-edge); box-shadow: var(--glass-shadow); border-radius: 20px; }

@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
    body.dashboard-glass { --glass-paper: #f4fcff7a; --glass-sheet: #dbeef0ad; --glass-nav: #e8f8fabb; }
    .dashboard-glass--staff main#main,.dashboard-glass--customer .account-wrap {
        -webkit-backdrop-filter: blur(22px) saturate(135%); backdrop-filter: blur(22px) saturate(135%);
    }
    .dashboard-glass :is(.glass-metric,.glass-actions,.workspace-dock,.account-nav,.account-panel,.request-card,.account-welcome,.support-list-item),
    .dashboard-glass--staff .workspace :is(.panel,.workflow-details,.stat-card),
    .dashboard-glass--staff :is(.sidebar,.topbar)[data-scroll-nav]::before,
    .dashboard-glass--staff .workspace-mobile-header::before,
    .dashboard-glass--customer .site-header[data-scroll-nav]::before {
        -webkit-backdrop-filter: blur(12px) saturate(125%); backdrop-filter: blur(12px) saturate(125%);
    }
}
@media (prefers-reduced-motion:no-preference) {
    .dashboard-glass--staff main#main,.dashboard-glass--customer .account-wrap { animation: workspace-pane-arrive .46s cubic-bezier(.2,.7,.2,1) backwards; }
    .dashboard-glass :is(.glass-focus,.glass-metric-grid,.glass-actions,.workspace-lower>*,.account-list>li,.account-grid>.account-panel) { animation: workspace-card-arrive .55s cubic-bezier(.2,.75,.25,1) backwards; }
    .dashboard-glass .glass-metric-grid { animation-delay: .05s; }
    .dashboard-glass .glass-actions { animation-delay: .1s; }
    .dashboard-glass :is(.workspace-lower>*,.account-list>li:nth-child(2)) { animation-delay: .14s; }
    .dashboard-glass .account-list>li:nth-child(n+3) { animation-delay: .2s; }
}
@keyframes workspace-pane-arrive { from { opacity: .4; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@keyframes workspace-card-arrive { from { opacity: .3; transform: translateY(12px) scale(.985); } to { opacity: 1; transform: none; } }
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
    .dashboard-glass :is(.glass-metric,.request-card):hover { transform: translateY(-5px); border-color: #fff; box-shadow: 0 16px 32px #101d3033,inset 0 1px 0 #fff; }
    .dashboard-glass :is(.button,.workspace-dock>a,.account-nav>a):hover { transform: translateY(-2px); }
    .dashboard-glass :is(.button,.glass-metric):active { transform: translateY(0) scale(.98); }
}
@media (max-width:1200px) {
    .dashboard-glass--staff .workspace { padding-right: 22px; padding-left: 102px; }
    .dashboard-glass--staff .topbar { gap: 13px; padding-inline: 16px; }
    .dashboard-glass--staff .workspace-brand .brand-mark { width: 105px; }
    .dashboard-glass--staff main#main { padding: 23px; }
    .dashboard-glass .glass-overview { grid-template-columns: minmax(0,.85fr) minmax(0,1.2fr); }
    .dashboard-glass .workspace-dock { left: calc(50% + 40px); }
    .dashboard-glass .glass-actions { grid-column: 1/-1; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 8px; padding: 17px 20px; }
    .dashboard-glass .glass-actions h2 { margin: 0 auto 0 0; }
    .dashboard-glass .glass-actions>p { display: none; }
    .dashboard-glass .glass-actions .button { margin: 0; }
}
@media (max-width:980px) {
    .dashboard-glass--staff .workspace-brand { display: none; }
    .dashboard-glass--staff .topbar { flex-wrap: wrap; }
    .dashboard-glass--staff .workspace-search { order: 3; flex: 1 1 100%; max-width: none; }
    .dashboard-glass--staff .topbar { border-radius: 25px; }
    .dashboard-glass--staff .account { max-width: calc(100% - 140px); }
    .dashboard-glass .workspace-lower { grid-template-columns: 1fr; }
    .dashboard-glass--customer .account-wrap { width: calc(100% - 36px); padding: 23px; }
    .dashboard-glass--customer .account-nav { border-radius: 24px; flex-wrap: wrap; }
    .dashboard-glass--customer .account-nav>a { flex: 1 1 auto; }
}
@media (min-width:741px) and (max-height:560px) {
    .dashboard-glass--staff .sidebar { top: 12px; transform: none; gap: 6px; padding-block: 6px; }
    .dashboard-glass--staff .rail-brand { display: none; }
    .dashboard-glass--staff .sidebar>nav { gap: 4px; }
    .dashboard-glass--staff .sidebar>form { padding-top: 6px; }
    .dashboard-glass--staff .sidebar .nav-tools>nav { top: 0; max-height: calc(100dvh - 24px); }
}
@media (max-width:740px) {
    body.dashboard-glass { background-attachment: scroll; background-image: linear-gradient(110deg,#1c1c289c,#15465575),url('/website-assets/coastal-hero-small.webp'); }
    .dashboard-glass--staff .workspace { padding: 12px 12px 28px; }
    .dashboard-glass--staff .sidebar,.dashboard-glass .workspace-dock { display: none; }
    .dashboard-glass--staff .workspace-mobile-header { top: 10px; margin: 0; border: 1px solid var(--glass-edge); border-radius: 999px; padding: 8px 16px; }
    body.dashboard-glass--staff .workspace-mobile-header::before { background: var(--glass-sheen),var(--glass-nav); opacity: 1; transform: none; border-radius: inherit; }
    .dashboard-glass--staff .topbar { position: relative; isolation: isolate; z-index: 35; margin: 10px 0 0; padding: 12px 14px; gap: 10px; border-radius: 22px; }
    .dashboard-glass--staff .topbar[data-scroll-nav]::before { display: block; }
    .dashboard-glass--staff .account { font-size: 13px; max-width: calc(100% - 130px); }
    .dashboard-glass--staff .workspace-search input { font-size: 16px; }
    .dashboard-glass--staff .topbar .avatar { display: grid; }
    .dashboard-glass--staff main#main { margin-top: 12px; padding: 20px 16px; border-radius: 24px; }
    .dashboard-glass--staff .workspace .page-heading { margin-bottom: 20px; }
    .dashboard-glass--staff .workspace .page-heading h1 { font-size: 28px; }
    .dashboard-glass .glass-overview { grid-template-columns: minmax(0,1fr); gap: 13px; }
    .dashboard-glass .glass-focus>strong { font-size: 50px; margin: 17px 0 8px; }
    .dashboard-glass .glass-focus .glass-metric-note { max-width: none; }
    .dashboard-glass .glass-metric-grid { gap: 11px; }
    .dashboard-glass .glass-metric { min-height: 130px; padding: 17px; border-radius: 18px; }
    .dashboard-glass .glass-focus { min-height: 240px; padding: 22px; }
    .dashboard-glass .glass-actions { flex-direction: column; align-items: stretch; padding: 20px; gap: 10px; }
    .dashboard-glass .glass-actions h2 { margin-bottom: 5px; }
    .dashboard-glass .glass-actions .button { min-height: 44px; }
    .dashboard-glass--staff .workspace .daily-task,.dashboard-glass--staff .workspace .panel-heading { padding: 18px; }
    .dashboard-glass--staff .workspace-lower .panel-heading { min-height: 0; }
    .dashboard-glass--staff .empty-state { padding: 27px 18px; }
    .dashboard-glass--staff .workspace-footer { gap: 12px; }
    .dashboard-glass--customer .site-header[data-scroll-nav] { width: calc(100% - 24px); margin-top: 12px; }
    .dashboard-glass--customer .account-wrap { width: calc(100% - 24px); margin: 15px auto 28px; padding: 19px 15px; border-radius: 24px; }
    .dashboard-glass--customer .account-nav { display: grid; width: 100%; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 5px; padding: 6px; border-radius: 22px; margin-bottom: 23px; }
    .dashboard-glass--customer .account-nav>a { min-width: 0; padding: 9px 7px; font-size: 13px; justify-content: flex-start; }
    .dashboard-glass--customer .account-nav form { grid-column: 1/-1; margin: 0; border-top: 1px solid #44667025; padding-top: 6px; }
    .dashboard-glass--customer .account-nav .button { width: 100%; }
    .dashboard-glass--customer .account-panel { padding: 20px; }
    .dashboard-glass--customer .account-list>.request-card { padding: 18px; }
    .dashboard-glass--customer .account-welcome { padding: 24px; }
    .dashboard-glass--customer .request-status { border-radius: 12px; }
    .dashboard-glass--customer .account-grid { grid-template-columns: minmax(0,1fr); gap: 16px; }
}
@media (max-width:360px) {
    .dashboard-glass .glass-metric-grid { grid-template-columns: minmax(0,1fr); }
    .dashboard-glass--staff .topbar .account .avatar { display: none; }
    .dashboard-glass--customer .account-nav { grid-template-columns: minmax(0,1fr); }
}
@media (prefers-reduced-motion:reduce) {
    .dashboard-glass,.dashboard-glass *,.dashboard-glass *::before,.dashboard-glass *::after { animation: none!important; transition: none!important; scroll-behavior: auto!important; }
}
@media (prefers-reduced-transparency:reduce) {
    body.dashboard-glass { --glass-paper: #f1f8fa; --glass-sheet: #e2eef2; --glass-nav: #f1f8fa; --glass-sheen: none; background: #d3e5e9; }
    .dashboard-glass *,.dashboard-glass *::before { backdrop-filter: none!important; -webkit-backdrop-filter: none!important; }
    .dashboard-glass [data-scroll-nav]::before,.dashboard-glass .workspace-dock { background: #f1f8fa; }
    .dashboard-glass .glass-focus { background: #e3f7f8; }
}
@media (forced-colors:active) {
    body.dashboard-glass { --glass-paper: Canvas; --glass-sheet: Canvas; --glass-nav: Canvas; --glass-sheen: none; --glass-edge: CanvasText; --glass-ink: CanvasText; --glass-muted: CanvasText; background: Canvas; color: CanvasText; }
    .dashboard-glass *,.dashboard-glass *::before { box-shadow: none!important; backdrop-filter: none!important; -webkit-backdrop-filter: none!important; }
    .dashboard-glass :is(.nav-link.selected,.workspace-dock>a[aria-current],.account-nav>a[aria-current]) { outline: 2px solid Highlight; }
}
@media print {
    body.dashboard-glass { background: #fff; color: #000; }
    .dashboard-glass .workspace-dock,.dashboard-glass--staff .sidebar { display: none!important; }
    .dashboard-glass--staff .workspace { padding: 0; }
    .dashboard-glass--staff main#main,.dashboard-glass--customer .account-wrap { margin: 0; padding: 0; background: #fff; box-shadow: none; border: 0; backdrop-filter: none; }
}
