/* Page-specific practice exploration and workday planner. */
body[data-page="privateoffice"] .office-hero-link{margin-top:22px}
.office-usecases .office-use-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:30px;align-items:start}
.office-usecases .use-tabs{gap:12px}
.office-usecases .use-tab{min-height:108px;padding:21px;gap:16px;flex-wrap:nowrap;transform:none;background:#fff;transition:background-color .2s,border-color .2s,box-shadow .2s}
.office-usecases .use-tab:hover{transform:none;background:#f1faff;border-color:#80bbcc}
.office-usecases .use-tab[aria-selected="true"]{background:#eaf7fc;border-color:#1686a5;box-shadow:inset 4px 0 #007a9a,0 8px 24px #0b4c6c0a}
.office-usecases .use-tab .number{order:0;flex:0 0 30px;width:30px;height:30px;font-size:14px}
.office-usecases .use-tab .tab-label{order:0;flex:1;min-width:0;font-family:var(--body);letter-spacing:0}
.office-usecases .tab-label strong{display:block;font-size:20px;font-weight:600;line-height:1.4;color:#102d43}
.office-usecases .tab-label small{display:block;margin-top:5px;font-size:16px;font-weight:400;line-height:1.5;color:#526a7b}
.office-usecases .use-tab>svg{order:0;width:19px;height:19px;flex:0 0 19px}
.office-usecases .use-panels{display:grid;min-width:0;align-self:start}
.office-usecases .use-panel{grid-area:1/1;display:flex;flex-direction:column;min-width:0;box-shadow:0 16px 40px #113e580a}
.office-usecases .use-panel[hidden]{display:flex!important;visibility:hidden;pointer-events:none}
.office-usecases .use-panel:not([hidden]){z-index:1}
.office-usecases .use-panel>img{height:280px;flex:0 0 auto;object-fit:cover}
.office-usecases .use-panel-content{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding:30px 32px 32px}
.office-usecases .use-panel h3{font-size:calc(clamp(26px,2.5vw,33px) + 2px);line-height:1.25;letter-spacing:-.035em}
.office-usecases .use-panel p{min-height:0;font-size:18px;line-height:1.75;margin:16px 0 0}
.office-kicker{display:block;font-size:15px;font-weight:600;line-height:1.6;letter-spacing:.025em;color:#00728e;margin-bottom:10px}
.office-usecases .use-panel .office-prepare{font-size:17px;padding:16px 18px;border-left:3px solid #8ebdce;background:#f5f9fb;border-radius:0 8px 8px 0}
.office-prepare strong{color:#102d43}
.office-usecases .use-panel .actions{gap:16px 22px;margin:auto 0 0;padding-top:24px;width:100%}
.office-usecases .use-panel .btn{margin:0;min-height:48px;font-size:17px}
.office-usecases .use-panel .text-link{min-height:44px;font-size:17px}
.office-photo-note{max-width:100ch;font-size:16px;line-height:1.75;margin-top:24px}

.office-planner{background:linear-gradient(155deg,#eff8fc,#fafcfd);border-block:1px solid #dceaf1;scroll-margin-top:18px}
.office-planner .section-heading p{max-width:370px}
.office-planner-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:26px;align-items:start}
.office-controls,.office-result-shell{min-width:0;padding:30px;border:1px solid #d3e3ec;border-radius:20px;background:#fff}
.office-result-shell{border-top:4px solid #0088aa;box-shadow:0 16px 45px #173b530a}
.office-step-heading{display:flex;align-items:center;gap:12px;margin-bottom:24px}
.office-step-heading h3{font-size:24px;font-weight:600;line-height:1.4;letter-spacing:-.025em;color:#102d43}
.office-step{display:grid;place-items:center;flex:0 0 35px;width:35px;height:35px;border:1px solid #badde9;border-radius:50%;font-size:14px;font-weight:600;color:#006e8b;background:#edf8fc}
.office-field{margin-bottom:23px;min-width:0}
.office-field label,.office-controls legend,.office-furnishing legend{display:block;margin-bottom:8px;font-size:18px;line-height:1.5;font-weight:600;color:#102d43;padding:0}
.office-field :is(select,input[type="number"]){display:block;width:100%;min-width:0;min-height:52px;padding:11px 12px;color:#102d43;background:#fff;border:1px solid #b7ceda;border-radius:8px;font:inherit;font-size:19px;line-height:1.5;transition:border-color .18s,box-shadow .18s}
.office-field select{padding-right:26px}
.office-field small,.office-field-note{display:block;font-size:16px;line-height:1.65;color:#526a7b;margin:8px 0 0}
.office-field-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.office-field-pair .office-field{margin-bottom:0}
.office-field-pair label{min-height:48px;display:flex;align-items:end}
.office-controls fieldset,.office-furnishing{min-width:0;border:0;margin:0;padding:0}
.office-controls .office-days{margin-top:25px}.office-days legend{margin-bottom:12px}
.office-day-choices{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.office-day-choices button{min-width:0;min-height:45px;padding:5px 0;border:1px solid #c4dce7;border-radius:8px;background:#fff;color:#526a7b;font:inherit;font-size:15px;line-height:1.5;font-weight:500;transition:border-color .18s,background-color .18s,color .18s}
.office-day-choices button:hover{border-color:#007a9a}.office-day-choices button[aria-pressed="true"]{background:#007a9a;color:#fff;border-color:#007a9a}
.office-hours-field{border-block:1px solid #deebf1;padding-block:23px;margin-top:25px}
.office-range-label{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:4px 14px}
.office-range-label output{font-size:19px;font-weight:600;color:#00728e;font-variant-numeric:tabular-nums}
.office-field input[type="range"]{display:block;width:100%;min-height:44px;margin:0;padding:0;accent-color:#007a9a;cursor:pointer}
.office-presence legend{margin-bottom:7px}.office-text-button{display:inline-flex;align-items:center;gap:9px;background:none;border:0;color:#006f8b;text-decoration:underline;text-underline-offset:4px;min-height:44px;font:inherit;font-size:17px;line-height:1.5;padding:8px 0;cursor:pointer;text-align:left}
[data-office-reset]{margin-top:15px}.office-text-button svg{width:19px;height:19px;flex:0 0 19px}
.office-result-heading h3{font-size:calc(clamp(25px,2.5vw,32px) + 2px);line-height:1.3;letter-spacing:-.035em}
.office-week-total{background:#102d43;color:#fff;padding:25px;border-radius:14px;margin-top:23px;position:relative;overflow:hidden}
.office-week-total:after{content:'';position:absolute;right:-30px;top:-60px;width:150px;height:150px;border:1px solid #9be7ff20;border-radius:50%;box-shadow:0 0 0 30px #9be7ff08;pointer-events:none}
.office-week-total span{display:block;font-size:16px;color:#c4e0ec;line-height:1.5}
.office-week-total strong{display:block;font-family:var(--display);font-size:calc(clamp(32px,3.3vw,44px) + 2px);font-weight:600;letter-spacing:-.04em;line-height:1.2;margin-top:9px;font-variant-numeric:tabular-nums}
.office-week-total p{font-size:16px;line-height:1.75;color:#c4e0ec;margin-top:15px;position:relative;z-index:1}
.office-week-chart{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px;padding:26px 8px 0}
.office-day-column{text-align:center;min-width:0}.office-day-column>span{display:block;font-size:16px;line-height:1.5;font-weight:600;color:#526a7b;margin-bottom:8px;font-variant-numeric:tabular-nums}
.office-day-column>strong{display:block;font-size:15px;line-height:1.5;font-weight:500;color:#526a7b;margin-top:8px}
.office-bar-track{height:112px;position:relative;overflow:hidden;background:#edf4f8;border-radius:6px}
.office-bar-track>span{position:absolute;inset:auto 0 0;background:linear-gradient(0deg,#007e9e,#58bad0);height:0;border-radius:6px;transition:height .32s ease}
.office-day-column.is-selected>span,.office-day-column.is-selected>strong{color:#006c88}
.office-week-caption{font-size:16px;line-height:1.75;color:#526a7b;margin-top:17px}
.office-membership-note{font-size:16px;line-height:1.75;color:#526a7b;padding:15px 17px;background:#f4f9fc;border-left:3px solid #a0c7d7;border-radius:0 8px 8px 0;margin-top:17px}
.office-people-plan{border-top:1px solid #dce9f0;margin-top:25px;padding-top:23px}
.office-people-plan h4{font-size:22px;line-height:1.45;font-weight:600;color:#102d43}
.office-people-equation{display:grid;grid-template-columns:1fr auto 1fr auto 1.25fr;gap:12px;align-items:center;margin-top:20px}
.office-people-equation>div{min-width:0;text-align:center;background:#f5f9fc;padding:16px 10px;border:1px solid #ddeaf1;border-radius:10px}
.office-people-equation div>span{display:block;font-size:15px;line-height:1.6;color:#526a7b}.office-people-equation strong{display:block;font-family:var(--display);font-size:32px;line-height:1.2;font-weight:600;margin-top:7px;color:#102d43;font-variant-numeric:tabular-nums}
.office-people-equation .office-peak{background:#e7f7fc;border-color:#8dc8d9}.office-people-equation .office-peak strong{color:#00728e}
.office-math-symbol{font-size:22px;color:#5e7e91}
.office-presence-dots{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:17px}.office-presence-dots>div{display:flex;gap:5px;align-items:center;flex-wrap:wrap}
.office-presence-dots span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;font-size:12px;line-height:1;background:#102d43;color:#fff;font-weight:600}
[data-office-visitor-dots] span{background:#bde6f0;color:#102d43}.office-presence-dots small{font-size:15px;color:#526a7b;line-height:1.5;margin-left:3px}
.office-capacity-note{font-size:16px;line-height:1.8;color:#526a7b;margin-top:14px}.office-capacity-note strong{color:#102d43;font-weight:600}
.office-included-note{display:flex;gap:11px;border-top:1px solid #dce9f0;padding-top:19px;margin-top:23px;align-items:start}
.office-included-note svg{width:20px;height:20px;flex:0 0 20px;color:#007a9a;margin-top:3px}.office-included-note p{font-size:16px;line-height:1.75;margin:0;color:#526a7b}.office-included-note strong{color:#102d43}
.office-error{padding:16px 18px;border:1px solid #d4a398;border-radius:9px;background:#fff5f2;color:#8b2c1d;font-size:17px;line-height:1.75;margin-top:20px}.office-field [aria-invalid="true"]{border-color:#a83d2a}
.office-result-empty{padding-block:60px}.office-result-empty h3{font-size:30px;line-height:1.3;margin-bottom:15px}.office-result-empty p{font-size:18px;line-height:1.8}
.office-details-section{margin-top:35px;padding:32px;border:1px solid #d3e3ec;border-radius:20px;background:#fff}
.office-details-heading{display:flex;justify-content:space-between;align-items:start;gap:40px;margin-bottom:27px}
.office-details-heading .office-step-heading{margin:0}.office-details-heading>p{max-width:420px;font-size:17px;line-height:1.75;margin:0}
.office-furnishing legend{margin-bottom:15px}.office-furnishing-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.office-furnishing-card{display:flex;gap:12px;align-items:flex-start;padding:22px 20px;border:1px solid #cee1eb;border-radius:12px;cursor:pointer;transition:background-color .2s,border-color .2s}
.office-furnishing-card input{appearance:auto;width:18px;height:18px;flex:0 0 18px;margin:4px 0 0;accent-color:#007a9a}
.office-furnishing-card strong{display:block;font-size:19px;font-weight:600;line-height:1.6;color:#102d43}.office-furnishing-card small{display:block;font-size:16px;line-height:1.7;color:#526a7b;margin-top:5px}
.office-furnishing-card.is-selected,.office-furnishing-card:hover{background:#edf8fc;border-color:#79b6ca}
.office-furnishing-detail{padding:24px 26px;border-radius:12px;background:#f4f9fc;margin-top:20px;min-height:193px}
.office-furnishing-detail h4{font-size:25px;font-weight:600;letter-spacing:-.02em;line-height:1.4;color:#102d43}.office-furnishing-detail p{font-size:18px;line-height:1.8;margin-top:11px}
.office-furnishing-detail small{display:block;font-size:16px;line-height:1.75;color:#526a7b;margin-top:12px}
.office-topic-picker{margin-top:30px}.office-topic-heading{display:flex;gap:15px;justify-content:space-between;align-items:baseline;margin-bottom:18px}
.office-topic-heading h4{font-size:23px;line-height:1.45;font-weight:600;color:#102d43}.office-topic-heading p{font-size:16px;line-height:1.7;margin:0;color:#526a7b}
.office-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.office-topic-card{display:grid;grid-template-columns:36px 1fr 20px;gap:12px 16px;padding:24px;border:1px solid #d3e4ec;border-radius:12px;cursor:pointer;transition:background-color .2s,border-color .2s}
.office-topic-card>input{appearance:auto;grid-column:3;grid-row:1;width:18px;height:18px;margin:5px 0 0;accent-color:#007a9a}
.office-topic-icon{grid-column:1;grid-row:1;display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#edf7fc;color:#007a9a}.office-topic-icon svg{width:22px;height:22px}
.office-topic-text{grid-column:2;grid-row:1}.office-topic-text strong{display:block;font-size:19px;font-weight:600;line-height:1.5;color:#102d43}.office-topic-text>span{display:block;font-size:16px;line-height:1.75;color:#526a7b;margin-top:6px}
.office-topic-state{grid-column:2/4;font-size:15px;font-weight:500;line-height:1.6;color:#00728e}
.office-topic-card.is-selected,.office-topic-card:hover{background:#f0f9fc;border-color:#79b6ca}.office-topic-card.is-selected .office-topic-state{font-weight:600}
.office-tour-questions{margin-top:24px}.office-tour-questions details{border-top:1px solid #dce8ef}.office-tour-questions summary{font-size:19px;line-height:1.6;font-weight:600;color:#006f8b;padding:19px 0;cursor:pointer}
[data-office-questions]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 30px}
[data-office-questions]>div:only-child{grid-column:1/-1;max-width:820px}
[data-office-questions] h5{font-size:19px;line-height:1.5;font-weight:600;margin-bottom:10px;color:#102d43}
[data-office-questions] ul{padding-left:21px;margin:0 0 13px}[data-office-questions] li{font-size:17px;line-height:1.8;color:#526a7b}[data-office-questions] li+li{margin-top:5px}
[data-office-questions] p{font-size:16px;line-height:1.75;color:#526a7b;margin:0}
.office-core-questions{font-size:17px;line-height:1.8;color:#526a7b;margin-top:24px;padding-top:20px;border-top:1px solid #dce8ef}.office-core-questions strong{color:#102d43}
.office-brief{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-items:center;gap:60px;padding:38px 40px;margin-top:30px;background:#102d43;border-radius:20px;color:#fff}
.office-brief .office-kicker{color:#a5e2ef}.office-brief h3{font-size:38px;font-weight:600;letter-spacing:-.04em;line-height:1.25;color:#fff}
.office-brief p{font-size:18px;line-height:1.8;margin-top:16px;color:#d3e4ee}.office-brief .office-save-note{font-size:16px;color:#afccd9;border-left:2px solid #6a9bac;padding-left:13px}
.office-save-actions{display:flex;flex-wrap:wrap;align-items:center;gap:13px 20px;margin-bottom:18px}.office-save-actions .btn{background:#fff;color:#102d43;font-size:17px;min-height:48px}
.office-brief .office-text-button,.office-brief .text-link{color:#caedf5;font-size:17px}.office-brief-actions>.btn{width:100%;font-size:18px;min-height:52px;background:#007e9f}.office-brief-actions>.btn:hover{background:#006981}
.office-brief-actions>.text-link{margin-top:15px;min-height:44px}.office-save-actions button:disabled{opacity:.55;cursor:not-allowed}
.office-copy-fallback{margin-bottom:17px}.office-copy-fallback label{display:block;font-size:17px;margin-bottom:8px}.office-copy-fallback textarea{display:block;width:100%;max-width:100%;resize:vertical;min-height:160px;border:1px solid #a0c3d5;background:#fff;color:#102d43;padding:13px;font:inherit;font-size:17px;line-height:1.65;border-radius:8px}
.office-save-status:empty{display:none}.office-brief .office-save-status{font-size:16px;color:#b9e8f3;margin-block:12px 18px}.office-planner-note{max-width:112ch;font-size:16px;line-height:1.8;margin-top:24px;color:#526a7b}.office-planner noscript p{margin-top:20px;line-height:1.8}
.office-controls[hidden]+.office-result-shell{grid-column:1/-1;max-width:760px;width:100%;justify-self:center}
.office-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
.office-usecases :is(a,button,[role="tabpanel"]):focus-visible,.office-planner :is(a,button,input,select,summary,textarea):focus-visible{outline:3px solid #007a9a;outline-offset:4px}.office-brief :is(a,button,input,textarea):focus-visible{outline-color:#98e4f5}
#office-planner-heading:focus-visible{outline:3px solid #007a9a;outline-offset:7px}
@media(max-width:1100px){.office-controls,.office-result-shell{padding:25px}.office-usecases .use-tab{padding:18px;gap:12px}.office-usecases .tab-label strong{font-size:19px}.office-week-chart{gap:10px}.office-people-equation{gap:8px}.office-people-equation>div{padding:14px 7px}.office-brief{gap:35px}.office-furnishing-card{padding:20px 15px}.office-topic-card{gap:12px;padding:20px}}
@media(max-width:900px){.office-planner-grid{grid-template-columns:1fr}.office-controls,.office-result-shell{padding:30px}.office-usecases .office-use-grid{gap:22px}.office-usecases .use-panel-content{padding:25px}.office-usecases .use-tab .number{flex-basis:26px;width:26px;height:26px}.office-week-chart{gap:18px;padding-inline:15px}.office-bar-track{height:140px}.office-details-heading{display:block}.office-details-heading>p{max-width:100%;margin-top:14px}.office-furnishing-options{grid-template-columns:1fr}.office-furnishing-card{padding:18px 20px}.office-furnishing-detail{min-height:0}.office-brief{gap:30px;padding:32px}.office-brief h3{font-size:34px}.office-topic-grid{grid-template-columns:1fr}.office-topic-heading{display:block}.office-topic-heading p{margin-top:8px}}
@media(max-width:600px){
 .office-usecases .office-use-grid{grid-template-columns:1fr;gap:24px}.office-usecases .use-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.office-usecases .use-tab{display:grid;grid-template-columns:1fr auto;align-content:start;align-items:start;gap:10px 8px;min-height:160px;padding:16px 13px}
 .office-usecases .use-tab .number{grid-column:1;grid-row:1}.office-usecases .use-tab>svg{grid-column:2;grid-row:1;align-self:center}.office-usecases .use-tab .tab-label{grid-column:1/-1;grid-row:2}.office-usecases .tab-label strong{font-size:18px;line-height:1.5}.office-usecases .tab-label small{font-size:16px;line-height:1.55}.office-usecases .use-tab[aria-selected="true"]{box-shadow:inset 0 3px #007a9a}
 .office-usecases .use-panel>img{height:235px}.office-usecases .use-panel-content{padding:24px 22px}.office-usecases .use-panel h3{font-size:30px}.office-usecases .use-panel .actions .btn{width:100%}.office-usecases .use-panel .actions{gap:13px}.office-photo-note,.office-planner-note{font-size:17px}
 .office-controls,.office-result-shell,.office-details-section{padding:24px 20px;border-radius:16px}.office-step-heading h3{font-size:23px}.office-field-pair{gap:13px}.office-field small,.office-field-note{font-size:17px}.office-day-choices{gap:5px}.office-day-choices button{font-size:14px}
 .office-week-total{padding:23px 20px}.office-week-total strong{font-size:42px}.office-week-total p{font-size:17px}.office-week-chart{gap:9px;padding-inline:0}.office-bar-track{height:100px}.office-day-column>strong{font-size:14px}.office-day-column>span{font-size:15px}.office-week-caption,.office-membership-note{font-size:17px}
 .office-people-equation{gap:6px;grid-template-columns:1fr 12px 1fr 12px 1.25fr}.office-people-equation>div{padding:13px 6px}.office-people-equation div>span{font-size:14px;min-height:39px;display:flex;align-items:center;justify-content:center}.office-people-equation strong{font-size:31px;margin-top:5px}.office-math-symbol{font-size:19px}.office-capacity-note,.office-included-note p{font-size:17px}
 .office-furnishing-card strong{font-size:19px}.office-furnishing-card small{font-size:17px}.office-furnishing-detail{padding:22px 18px}.office-furnishing-detail small{font-size:17px}
 .office-topic-card{grid-template-columns:32px 1fr 18px;padding:20px 16px;gap:12px}.office-topic-icon{width:32px;height:32px}.office-topic-text>span{font-size:17px}.office-topic-state{font-size:16px}
 [data-office-questions]{grid-template-columns:1fr;gap:24px}[data-office-questions] li,[data-office-questions] p,.office-core-questions{font-size:18px}
 .office-brief{grid-template-columns:1fr;gap:22px;padding:28px 22px;border-radius:16px}.office-brief h3{font-size:36px}.office-brief .office-save-note{font-size:17px}.office-save-actions .btn{width:100%;font-size:18px}.office-brief .office-text-button,.office-brief .text-link{font-size:18px}.office-usecases .use-panel .btn,.office-usecases .use-panel .text-link{font-size:18px}
}
@media(max-width:360px){.office-field-pair{grid-template-columns:1fr}.office-field-pair label{min-height:0}.office-field-pair .office-field+.office-field{margin-top:8px}.office-week-chart{gap:6px}.office-people-equation{gap:4px}.office-people-equation div>span{font-size:13px}.office-topic-card{grid-template-columns:1fr 20px}.office-topic-icon{grid-column:1;grid-row:1}.office-topic-card>input{grid-column:2}.office-topic-text{grid-column:1/-1;grid-row:2}.office-topic-state{grid-column:1/-1}}
/* Keep weekday labels and tap targets comfortable with the larger type. */
@media(max-width:480px){.office-day-choices{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.office-usecases .use-tab,.office-field :is(select,input),.office-day-choices button,.office-bar-track>span,.office-furnishing-card,.office-topic-card{transition:none}}
@media print{body[data-page="privateoffice"] .site-header,body[data-page="privateoffice"] .subnav,.office-controls,.office-save-actions,.office-furnishing,.office-topic-picker{display:none!important}.office-planner-grid,.office-brief{display:block}.office-brief{background:#fff;color:#102d43}.office-brief :is(h3,p,.office-kicker){color:#102d43}}

