/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.grid{display:grid}.hidden{display:none}.table{display:table}}:root{--ink:#18242c;--muted:#71808a;--line:#dfe6e2;--paper:#fbfcfa;--green:#1f6f55}*{box-sizing:border-box}body{color:var(--ink);background:#eef2ef;margin:0;font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif}button,input,select,textarea{font:inherit;color:inherit}button{-webkit-tap-highlight-color:transparent}.auth-shell{background:#f4f7f5;grid-template-columns:minmax(360px,1.08fr) minmax(460px,.92fr);min-height:100vh;display:grid}.auth-brand{color:#fff;background:radial-gradient(circle at 12% 12%,#317e64 0,#0000 32%),linear-gradient(145deg,#153e33 10%,#0f2d26 100%);flex-direction:column;justify-content:center;padding:70px clamp(42px,8vw,128px);display:flex;position:relative;overflow:hidden}.auth-brand:after{content:"";border:80px solid #ffffff0b;border-radius:50%;width:480px;height:480px;position:absolute;bottom:-220px;right:-190px}.brand-logo{object-fit:cover;background:#fff;border:1px solid #ffffff52;border-radius:20px;width:112px;height:112px;margin-bottom:28px;box-shadow:0 16px 34px #00000029}.auth-venue-marks{align-items:center;gap:15px;margin-bottom:28px;display:flex}.auth-venue-marks .brand-logo{margin-bottom:0}.tennis-mark{background:#d8ef43;border-radius:50%;flex:none;width:50px;height:50px;display:inline-block;position:relative;overflow:hidden;box-shadow:inset -7px -8px #70891124,0 6px 18px #00000024}.tennis-mark:before,.tennis-mark:after{content:"";border:3px solid #0000;border-color:#0000 #ffffffeb;border-radius:50%;width:46px;height:62px;position:absolute;top:-6px}.tennis-mark:before{left:-29px}.tennis-mark:after{right:-29px}.auth-tennis-mark{border:1px solid #ffffff52;width:112px;height:112px;box-shadow:0 16px 34px #00000029}.auth-tennis-mark:before,.auth-tennis-mark:after{border-width:6px;width:100px;height:132px;top:-10px}.auth-tennis-mark:before{left:-62px}.auth-tennis-mark:after{right:-62px}.auth-brand h1{letter-spacing:-.03em;margin:12px 0 22px;font-size:clamp(38px,5vw,68px);line-height:1.16}.brand-copy{color:#c7ddd4;max-width:540px;margin:0;font-size:16px;line-height:1.8}.auth-benefits{flex-wrap:wrap;gap:9px;margin-top:36px;display:flex}.auth-benefits span{color:#d5e6df;background:#ffffff12;border:1px solid #ffffff26;border-radius:999px;padding:8px 11px;font-size:12px}.venue-cards{grid-template-columns:1fr 1fr;gap:10px;max-width:560px;margin-top:30px;display:grid}.venue-cards div{background:#ffffff12;border:1px solid #ffffff26;border-radius:12px;flex-direction:column;gap:5px;padding:14px 15px;display:flex}.venue-cards b{font-size:13px}.venue-cards span{color:#c7ddd4;font-size:11px}.auth-panel{place-items:center;padding:34px;display:grid}.auth-card{background:#fff;border:1px solid #dfe7e3;border-radius:20px;width:min(450px,100%);padding:28px 32px;box-shadow:0 20px 60px #1b382d1a}.auth-tabs{background:#edf2ef;border-radius:11px;grid-template-columns:1fr 1fr;padding:4px;display:grid}.auth-tabs button{color:#728078;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:9px;font-size:13px}.auth-tabs button.active{color:var(--green);background:#fff;font-weight:700;box-shadow:0 2px 8px #1c392e17}.auth-heading{padding:27px 0 18px}.auth-heading>span{color:var(--green);letter-spacing:.12em;font-size:11px;font-weight:700}.auth-heading h2{margin:4px 0 7px;font-size:25px}.auth-heading p{color:#7a8881;margin:0;font-size:12px;line-height:1.6}.auth-form{flex-direction:column;gap:13px;display:flex}.auth-form label{flex-direction:column;gap:6px;display:flex}.auth-form label span{color:#506058;font-size:12px;font-weight:650}.auth-form input{background:#fbfcfb;border:1px solid #d7e0dc;border-radius:10px;outline:0;width:100%;height:43px;padding:0 12px}.auth-form input:focus{border-color:#6f9e8a;box-shadow:0 0 0 3px #e3f0eb}.auth-submit{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:11px;margin-top:4px;padding:12px;font-weight:700}.auth-secondary{color:#66756e;cursor:pointer;background:#fff;border:1px solid #d7e0dc;border-radius:11px;padding:11px}.auth-footnote{color:#91a099;text-align:center;margin:16px 0 0;font-size:11px}.auth-error,.team-error{color:#ae4338;background:#fff4f2;border:1px solid #f0d2ce;border-radius:9px;padding:10px 12px;font-size:12px}.auth-loading{color:#d5e6df;background:#153e33;flex-direction:column;justify-content:center;align-items:center;gap:15px;min-height:100vh;display:flex}.loading-logo{object-fit:cover;background:#fff;border-radius:15px;width:72px;height:72px;box-shadow:0 12px 28px #0003}.app-shell{flex-direction:column;height:100vh;min-height:640px;display:flex}.topbar{color:#fff;background:#163f34;justify-content:space-between;align-items:center;height:86px;padding:0 34px;display:flex}.topbar-brand{align-items:center;gap:13px;display:flex}.topbar-logo{object-fit:cover;background:#fff;border-radius:11px;flex:none;width:50px;height:50px;box-shadow:0 6px 18px #00000024}.eyebrow{letter-spacing:.16em;color:#b9d6cb;margin:0 0 3px;font-size:12px}h1{letter-spacing:.03em;margin:0;font-size:25px;font-weight:650}.top-actions{align-items:center;gap:9px;display:flex}.daily-income-button{color:#18242c;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d8dfdc;border-radius:10px;min-width:92px;padding:9px 13px;font-size:12px;font-weight:750}.daily-income-button:hover{background:#f1f4f2}.daily-income-button:disabled{opacity:.6;cursor:wait}.monthly-info-button{color:#18242c;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d8dfdc;border-radius:10px;min-width:92px;padding:9px 13px;font-size:12px;font-weight:750;transition:background .2s,color .2s,border-color .2s;position:relative}.monthly-info-button:hover{background:#f1f4f2;border-color:#fff}.monthly-info-button.needs-export{color:#fff;background:#c73e34;border-color:#c73e34}.monthly-info-button.needs-export:hover{background:#ad3028}.monthly-info-button i{background:#fff;border-radius:50%;width:7px;height:7px;position:absolute;top:6px;right:7px;box-shadow:0 0 0 3px #ffffff2e}.home-button{color:#fff;white-space:nowrap;background:#ffffff1a;border:1px solid #ffffff40;border-radius:10px;padding:9px 12px;font-size:12px;text-decoration:none;transition:background .2s,border-color .2s}.home-button:hover{background:#ffffff2e;border-color:#ffffffa6}.venue-switch{background:#ffffff12;border:1px solid #ffffff2e;border-radius:10px;gap:3px;padding:3px;display:flex}.venue-switch button{color:#c7ddd4;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:7px;padding:7px 10px;font-size:11px}.venue-switch button.active{color:#245b45;background:#fff;font-weight:700;box-shadow:0 2px 8px #0000001f}.team-button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:10px;padding:9px 12px;font-size:12px}.staff-chip{background:#ffffff14;border:1px solid #ffffff2e;border-radius:12px;align-items:center;gap:9px;min-width:176px;padding:7px 8px 7px 11px;font-size:13px;display:flex}.staff-chip>span:nth-child(2){flex-direction:column;line-height:1.25;display:flex}.staff-chip b{font-size:13px}.staff-chip small{color:#b9d6cb;font-size:10px}.staff-chip button{color:#dcebe5;cursor:pointer;background:#ffffff1a;border:0;border-radius:7px;margin-left:auto;padding:6px 8px;font-size:11px}.staff-dot,.legend-dot{border-radius:50%;flex:none;width:10px;height:10px;display:inline-block;box-shadow:0 0 0 1px #60706894}.signed-in{color:#b9d6cb;margin-left:auto;font-size:11px}.date-panel{background:var(--paper);border-bottom:1px solid var(--line);grid-template-columns:auto minmax(460px,1fr) auto;align-items:center;gap:10px;min-height:82px;padding:8px 18px;display:grid}.date-navigation{align-items:center;gap:10px;display:flex}.icon-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:9px;width:34px;height:34px;font-size:24px}.icon-button:hover{color:var(--green);border-color:#92b2a5}.date-copy{flex-direction:column;min-width:154px;line-height:1.3;display:flex}.date-kicker{color:var(--green);font-size:12px;font-weight:650}.date-copy strong{font-size:16px}.archive-label{color:#a6652c;margin-top:2px;font-size:10px;font-weight:700}.date-picker{border:1px solid var(--line);color:#0000;cursor:pointer;background:#fff;border-radius:9px;width:36px;height:34px;padding:6px}.date-picker::-webkit-calendar-picker-indicator{opacity:.72;cursor:pointer}.today-button{color:var(--green);cursor:pointer;background:#e3eee9;border:0;border-radius:10px;padding:10px 13px;font-weight:650}.finance-strip{grid-template-columns:repeat(3,minmax(78px,1fr)) minmax(170px,1.65fr);gap:6px;min-width:0;display:grid}.finance-card{background:#fff;border:1px solid #dde5e1;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-width:0;min-height:62px;padding:6px 7px;display:flex;box-shadow:0 2px 8px #1d3e320a}.finance-card strong{text-overflow:ellipsis;color:#1d2933;white-space:nowrap;max-width:100%;font-size:16px;overflow:hidden}.finance-card>span,.cash-card>div span{color:#77838c;font-size:10px}.finance-card.received strong{color:#22aa70}.finance-card.outstanding strong{color:#e64d19}.cash-card{justify-content:center;align-items:stretch;gap:3px}.cash-card>div{justify-content:center;align-items:baseline;gap:6px;display:flex}.cash-form{grid-template-columns:minmax(0,1fr) auto;gap:5px;display:grid}.cash-form input{background:#fbfcfb;border:1px solid #d6dfda;border-radius:6px;outline:0;min-width:0;height:24px;padding:0 6px;font-size:10px}.cash-form input:focus{border-color:#6f9e8a;box-shadow:0 0 0 2px #e3f0eb}.cash-form button{background:var(--green);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:6px;height:24px;padding:0 7px;font-size:9px}.cash-form button:disabled{opacity:.48;cursor:default}.undo-cash{color:#7b8982;cursor:pointer;background:0 0;border:0;align-self:center;padding:0;font-size:9px}.undo-cash:hover{color:#b34e43}.legend{flex-wrap:nowrap;justify-content:flex-end;gap:5px;display:flex}.legend span{color:#506069;border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:999px;align-items:center;gap:5px;padding:5px 7px;font-size:10px;display:flex}.schedule-card{flex:1;min-height:0;padding:10px 18px 172px}.schedule-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border:1px solid var(--line);background:#fff;border-radius:16px;height:100%;overflow:auto;box-shadow:0 12px 34px #1d3e3212}.grid{grid-template-rows:66px 96px repeat(13,74px);min-width:1510px;display:grid;position:relative}.corner-cell,.court-head{z-index:5;border-bottom:1px solid #ccd8d2;border-right:1px solid var(--line);background:#f3f7f5;flex-direction:column;justify-content:center;align-items:center;font-weight:650;display:flex;position:sticky;top:0}.corner-cell{z-index:7;color:var(--muted);left:0}.corner-cell small,.court-head small{color:#91a098;margin-top:4px;font-size:10px;font-weight:500}.time-cell{z-index:4;border-right:1px solid #ccd8d2;border-bottom:1px solid var(--line);color:#52626b;background:#f8faf9;flex-direction:column;justify-content:center;align-items:center;font-size:13px;display:flex;position:sticky;left:0}.time-cell small{color:#8a9890;margin-top:4px;font-size:10px}.morning-time{color:#8b6324;background:#fffaf0}.slot{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:#9aa7a0;cursor:pointer;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:0;padding:8px 10px;transition:background .15s,box-shadow .15s;display:flex}.slot:not(:disabled):hover,.slot:not(:disabled):focus-visible{color:var(--green);background:#f4faf7;outline:0;box-shadow:inset 0 0 0 2px #6da88f}.slot:disabled{cursor:default;color:#0000;background:#fcfdfc}.slot.is-archived:disabled{color:#a7b0ab;background:repeating-linear-gradient(-45deg,#f7f8f7,#f7f8f7 9px,#f1f3f2 9px 18px)}.morning-slot{background:#fffdf8}.empty-plus{font-size:18px;line-height:1;display:none}.slot:hover .empty-plus,.slot:focus-visible .empty-plus{display:inline}.booking-block{z-index:3;border:1px solid var(--booking-color);min-width:0;margin:4px;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.booking-block{border:1px solid color-mix(in srgb, var(--booking-color) 48%, white)}}.booking-block{border-left:5px solid var(--booking-color);background:var(--booking-color);border-radius:9px}@supports (color:color-mix(in lab, red, red)){.booking-block{background:color-mix(in srgb, var(--booking-color) 16%, white)}}.booking-block{cursor:pointer;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;padding:8px 34px 8px 11px;display:flex;box-shadow:0 3px 9px #1b362c14}.booking-block:hover{box-shadow:0 5px 14px #1b362c29, inset 0 0 0 1px var(--booking-color)}.booking-block.is-archived{cursor:default;filter:saturate(.55);opacity:.82}.booking-block.is-archived:hover{box-shadow:0 3px 9px #1b362c14}.booking-block strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:13px;line-height:1.3;overflow:hidden}.booking-block span{text-overflow:ellipsis;white-space:nowrap;color:#47564f;max-width:100%;font-size:11px;overflow:hidden}.booking-block .booking-amount{color:#253e34;font-weight:700}.booking-block small{color:#617068;font-size:10px}.booking-block em{color:var(--booking-color)}@supports (color:color-mix(in lab, red, red)){.booking-block em{color:color-mix(in srgb, var(--booking-color) 75%, #253a31)}}.booking-block em{font-size:10px;font-style:normal;font-weight:650}.booking-check{border:2px solid var(--booking-color);color:#fff;cursor:pointer;background:#fff;border-radius:6px;place-items:center;width:20px;height:20px;font-size:11px;line-height:1;display:grid;position:absolute;top:9px;right:9px}.booking-block.is-complete .booking-check{background:var(--booking-color);border-color:var(--booking-color)}.booking-extend{border:1px solid var(--booking-color);width:24px;height:24px;position:absolute;top:34px;right:7px}@supports (color:color-mix(in lab, red, red)){.booking-extend{border:1px solid color-mix(in srgb, var(--booking-color) 55%, white)}}.booking-extend{color:var(--booking-color);cursor:pointer;background:#fff;border-radius:7px;place-items:center;font-size:17px;font-weight:800;line-height:1;display:grid}.booking-extend:hover:not(:disabled),.booking-extend:focus-visible:not(:disabled){background:var(--booking-color);color:#fff;outline:0}.booking-extend:disabled{opacity:.34;cursor:not-allowed}.booking-check:disabled{cursor:not-allowed;opacity:.62}.loading-layer{z-index:8;color:#60736a;background:#ffffffe6;place-items:center;height:70px;display:grid;position:absolute;inset:66px 0 auto 92px}.export-button{color:#fff;cursor:pointer;white-space:nowrap;background:#8a5d20;border:0;border-radius:10px;height:42px;padding:0 16px;font-size:12px;font-weight:700}.export-button:hover:not(:disabled){background:#704912}.export-button:disabled{cursor:default;opacity:.48}.statusbar{z-index:10;color:#607068;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border:1px solid #d6dfda;border-radius:15px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:20px;min-height:148px;padding:10px 12px 10px 20px;font-size:13px;display:grid;position:fixed;bottom:16px;left:24px;right:24px;box-shadow:0 10px 30px #19382d24}.statusbar b{color:var(--ink);font-size:16px}.status-summary{white-space:nowrap;align-items:center;gap:20px;display:flex}.autosave{color:#418068}.daily-note{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0;display:grid}.daily-note-card{background:#fbfcfb;border:1px solid #d6dfda;border-radius:10px;flex-direction:column;gap:5px;min-width:0;height:124px;padding:8px 10px;display:flex}.daily-note-head{color:#315e4c;white-space:nowrap;justify-content:space-between;align-items:baseline;gap:5px;display:flex}.daily-note-head strong{font-size:12px}.daily-note-head small{color:#7b8982;font-size:9px}.daily-note-entries{flex:1;min-height:0;font-size:10px;line-height:1.4;overflow-y:auto}.daily-note-entry{border-bottom:1px solid #ecf0ed;align-items:baseline;gap:5px;padding:2px 0;display:flex}.daily-note-author{color:#315e4c;white-space:nowrap;flex:none;align-items:center;gap:3px;font-weight:700;display:inline-flex}.daily-note-author i{border:1px solid #cdd6d0;border-radius:50%;width:7px;height:7px}.daily-note-content{overflow-wrap:anywhere;color:#384b40;min-width:0}.daily-note-empty{color:#9aa59e}.daily-note-form{flex:none;gap:5px;display:flex}.daily-note-form input{background:#fff;border:1px solid #d6dfda;border-radius:7px;outline:0;width:100%;min-width:0;height:29px;padding:4px 7px;font-size:10px}.daily-note-form input:focus{border-color:#6f9e8a;box-shadow:0 0 0 2px #e3f0eb}.daily-note-form button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:7px;flex:none;padding:0 8px;font-size:10px}.daily-note-form button:disabled{opacity:.45;cursor:not-allowed}.primary-button,.save-button{background:var(--green);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:11px;margin-left:auto;padding:11px 18px;font-weight:650}.primary-button:hover,.save-button:hover{background:#185d47}.primary-button:disabled,.save-button:disabled{cursor:not-allowed;opacity:.48}.modal-backdrop{z-index:40;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0e1f197a;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.booking-modal{background:#fff;border-radius:20px;width:min(600px,100%);max-height:calc(100vh - 44px);overflow:auto;box-shadow:0 24px 70px #0c221a47}.monthly-info-modal{background:#fff;border-radius:20px;width:min(660px,100%);max-height:calc(100vh - 44px);overflow:auto;box-shadow:0 24px 70px #0c221a47}.monthly-loading{color:#6c7b73;place-items:center;min-height:210px;font-size:13px;display:grid}.monthly-info-content{flex-direction:column;gap:16px;padding:20px 26px 24px;display:flex}.monthly-export-status{border-radius:11px;flex-direction:column;gap:5px;padding:14px 16px;display:flex}.monthly-export-status strong{font-size:14px}.monthly-export-status span{font-size:11px;line-height:1.55}.monthly-export-status.needs-export{color:#a7332a;background:#fff1ef;border:1px solid #efc6c1}.monthly-export-status.is-exported{color:#287257;background:#edf7f2;border:1px solid #cce2d8}.monthly-summary-grid{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.monthly-summary-grid div{border:1px solid var(--line);background:#f9fbfa;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:76px;display:flex}.monthly-summary-grid strong{font-size:18px}.monthly-summary-grid span{color:#7b8982;font-size:10px}.monthly-path-note{color:#627068;background:#f4f6f5;border-radius:10px;margin:0;padding:12px 14px;font-size:11px;line-height:1.7}.monthly-info-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:9px;padding:14px 26px 22px;display:flex}.modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding:24px 26px 16px;display:flex}.modal-kicker{color:var(--green);letter-spacing:.14em;font-size:11px;font-weight:700}.modal-head h2{margin:3px 0 0;font-size:22px}.close-button{cursor:pointer;background:#f0f3f1;border:0;border-radius:50%;width:34px;height:34px;font-size:23px;line-height:1}.range-note{color:#5d6c65;background:#edf5f1;border-radius:10px;margin:17px 26px 0;padding:11px 13px;font-size:12px;line-height:1.55}.range-note span{color:var(--green);margin-right:8px;font-weight:700}.form-grid{grid-template-columns:1fr 1fr;gap:15px;padding:20px 26px 24px;display:grid}.field{flex-direction:column;gap:7px;display:flex}.field.full{grid-column:1/-1}.field span{color:#53625b;font-size:12px;font-weight:650}.field input,.field select,.field textarea{background:#fbfcfb;border:1px solid #d8e0dc;border-radius:10px;outline:0;width:100%;padding:10px 11px}.field input:focus,.field select:focus,.field textarea:focus{border-color:#6f9e8a;box-shadow:0 0 0 3px #e3f0eb}.field textarea{resize:vertical}.modal-actions{border-top:1px solid var(--line);align-items:center;gap:9px;padding:14px 26px 22px;display:flex}.secondary-button,.danger-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;padding:10px 15px}.danger-button{color:#b6453a;border-color:#efd4d1}.save-button{margin-left:0}.danger-button+.secondary-button{margin-left:auto}.toast{z-index:60;color:#fff;background:#153f33;border-radius:10px;max-width:calc(100vw - 32px);padding:11px 16px;font-size:13px;position:fixed;top:102px;left:50%;transform:translate(-50%);box-shadow:0 10px 28px #0d241c3b}.team-modal{background:#fff;border-radius:20px;width:min(880px,100%);max-height:calc(100vh - 44px);overflow:auto;box-shadow:0 24px 70px #0c221a47}.invite-form{border-bottom:1px solid var(--line);background:#f5f8f6;grid-template-columns:1fr 1.15fr .9fr .8fr auto;align-items:end;gap:10px;padding:18px 24px;display:grid}.invite-form label{flex-direction:column;gap:6px;display:flex}.invite-form label span{color:#596960;font-size:11px;font-weight:650}.invite-form input,.invite-form select{background:#fff;border:1px solid #d7e0dc;border-radius:9px;outline:0;width:100%;min-width:0;height:39px;padding:0 10px}.invite-form button{white-space:nowrap;background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:9px;height:39px;padding:0 13px;font-size:12px;font-weight:650}.user-form{grid-template-columns:1fr 1.15fr 1fr auto}.initial-password-note{grid-template-columns:auto 1fr;align-content:center;gap:2px 8px;min-height:39px;display:grid}.initial-password-note span,.initial-password-note small{color:#738179;font-size:10px}.initial-password-note strong{color:#29483b;font-size:13px}.initial-password-note small{grid-column:1/-1}.team-error{margin:14px 24px 0}.team-columns{grid-template-columns:1fr 1fr;gap:20px;padding:22px 24px 28px;display:grid}.team-columns h3{margin:0 0 10px;font-size:14px}.team-columns h3 span{color:var(--green)}.team-single-column{padding:22px 24px 28px}.team-single-column h3{margin:0 0 10px;font-size:14px}.team-single-column h3 span{color:var(--green)}.team-list{border:1px solid var(--line);border-radius:11px;overflow:hidden}.team-row{border-bottom:1px solid #e8eeeb;align-items:center;gap:10px;min-height:57px;padding:9px 11px;display:flex}.team-row:last-child{border-bottom:0}.team-row>i{border-radius:50%;flex:none;width:10px;height:10px;box-shadow:0 0 0 1px #60706894}.team-row>div{flex-direction:column;min-width:0;display:flex}.team-row strong{align-items:center;gap:6px;font-size:12px;display:flex}.team-row strong em{color:var(--green);background:#e7f1ed;border-radius:999px;padding:2px 5px;font-size:9px;font-style:normal}.team-row small{color:#7b8982;font-size:10px}.registered-tag{color:#48836b;margin-left:auto;font-size:10px}.remove-invite{color:#b44e43;cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:11px}.team-row-actions{align-items:center;gap:7px;margin-left:auto;display:flex}.team-row-actions button{color:#486057;cursor:pointer;background:#fff;border:1px solid #d8e0dc;border-radius:7px;padding:6px 8px;font-size:10px}.team-row-actions .deactivate-user{color:#b44e43;border-color:#efd4d1}.team-row-actions button:disabled{cursor:default;opacity:.46}.password-tag{color:#956620;white-space:nowrap;background:#fff1d7;border-radius:999px;padding:3px 6px;font-size:9px}.empty-state{color:#89968f;text-align:center;margin:0;padding:20px;font-size:11px}.tennis-topbar{background:#1f472f}.tennis-date-panel{grid-template-columns:auto minmax(360px,1fr) auto}.tennis-hours{color:#6c7b73;justify-content:center;align-items:center;gap:7px;min-width:0;font-size:10px;display:flex}.tennis-hours strong{color:#315c45}.tennis-hours span{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:999px;padding:5px 7px}.tennis-legend{border:1px solid var(--line);background:#fff;border-radius:999px;justify-content:flex-end;align-items:center;gap:7px;padding:8px 10px;display:flex}.tennis-legend .legend-dot{width:12px;height:12px;box-shadow:0 0 0 2px #fff,0 0 0 3px #e4eae6}.tennis-schedule-card{padding-top:12px;padding-bottom:76px}.tennis-shell .statusbar{grid-template-columns:auto minmax(0,1fr) auto;min-height:72px}.tennis-grid{grid-template-rows:72px repeat(4,minmax(112px,1fr));min-width:1040px;height:100%;min-height:620px;display:grid;position:relative}.tennis-court-head{padding:0}.tennis-court-head small{grid-template-columns:1fr 1fr;width:100%;margin-top:8px;display:grid}.tennis-court-head small span{text-align:center;min-width:0}.tennis-court-head small span+span{border-left:1px solid #d7e1dc}.tennis-time-cell{text-align:center;padding:0 8px}.tennis-slot small{color:#a3afa8;font-size:9px}.tennis-booking-block{padding-right:12px}.tennis-loading-layer{inset:72px 0 auto 118px}@media (width<=760px){.auth-shell{grid-template-columns:1fr}.auth-brand{justify-content:flex-start;min-height:230px;padding:30px 24px}.brand-logo{border-radius:14px;width:70px;height:70px;margin-bottom:14px}.auth-venue-marks{margin-bottom:14px}.auth-venue-marks .brand-logo,.auth-tennis-mark{width:70px;height:70px}.auth-tennis-mark:before,.auth-tennis-mark:after{border-width:4px;width:64px;height:84px;top:-7px}.auth-tennis-mark:before{left:-40px}.auth-tennis-mark:after{right:-40px}.auth-brand h1{margin:5px 0 10px;font-size:32px}.brand-copy{font-size:13px;line-height:1.6}.auth-benefits{margin-top:17px}.venue-cards{grid-template-columns:1fr;margin-top:16px}.venue-cards div{padding:9px 11px}.auth-panel{align-items:start;padding:18px 14px 30px}.auth-card{border-radius:16px;padding:22px 20px}.topbar{height:72px;padding:0 16px}.topbar-brand{gap:9px}.topbar-logo{border-radius:9px;width:42px;height:42px}h1{font-size:20px}.eyebrow,.legend{display:none}.monthly-info-button,.daily-income-button{min-width:auto;padding:8px;font-size:10px}.monthly-info-button i{width:6px;height:6px;top:4px;right:4px}.home-button{padding:8px;font-size:0}.home-button:after{content:"首页";font-size:11px}.team-button{padding:8px}.staff-chip{min-width:auto;padding:7px 8px}.staff-chip small{display:none}.venue-switch button{padding:6px 7px;font-size:10px}.app-shell{min-height:680px}.date-panel{grid-template-columns:1fr;gap:7px;min-height:154px;padding:9px 12px 10px}.date-navigation{gap:6px}.date-copy{flex:1;min-width:0}.date-copy strong{font-size:15px}.today-button{display:none}.finance-strip{scrollbar-width:none;gap:7px;width:100%;padding-bottom:2px;display:flex;overflow-x:auto}.finance-strip::-webkit-scrollbar{display:none}.finance-card{min-width:122px;min-height:67px;padding:7px 8px}.finance-card strong{font-size:15px}.cash-card{min-width:205px}.schedule-card{padding:9px 9px 178px}.schedule-scroll{border-radius:12px}.statusbar{grid-template-columns:minmax(0,1fr);gap:0;min-height:146px;padding:7px 8px;bottom:9px;left:9px;right:9px}.status-summary{display:none}.daily-note{scroll-snap-type:x mandatory;padding-bottom:2px;display:flex;overflow-x:auto}.daily-note-card{scroll-snap-align:start;flex:0 0 min(78vw,310px);height:128px}.modal-backdrop{align-items:end;padding:0}.booking-modal,.monthly-info-modal{border-radius:20px 20px 0 0;width:100%;max-height:92vh}.modal-head{padding:20px 19px 14px}.range-note{margin:14px 19px 0}.form-grid{grid-template-columns:1fr;gap:12px;padding:17px 19px 20px}.field.full{grid-column:auto}.modal-actions{padding:13px 19px 20px}.booking-check{width:24px;height:24px;top:8px;right:8px}.booking-extend{width:28px;height:28px;top:38px;right:6px}.team-modal{border-radius:20px 20px 0 0;width:100%;max-height:92vh}.invite-form{grid-template-columns:1fr 1fr;padding:16px 18px}.invite-form button{grid-column:1/-1}.team-columns{grid-template-columns:1fr;padding:18px}.team-single-column{padding:18px}.initial-password-note{align-self:end}.team-row{flex-wrap:wrap;align-items:flex-start}.team-row-actions{justify-content:flex-end;width:100%}.monthly-info-content{padding:17px 19px 20px}.monthly-summary-grid{grid-template-columns:1fr 1fr}.monthly-summary-grid div:last-child{grid-column:1/-1}.monthly-info-actions{padding:13px 19px 20px}.tennis-date-panel{min-height:118px}.tennis-hours{display:none}.tennis-legend{position:absolute;top:82px;right:12px}.tennis-grid{min-height:560px}.tennis-shell .schedule-card{padding-top:8px;padding-bottom:78px}.tennis-shell .statusbar{grid-template-columns:1fr auto;min-height:70px}.tennis-shell .statusbar .autosave{display:none}}@media (width>=761px) and (width<=1220px){.date-panel{grid-template-columns:minmax(310px,auto) 1fr}.date-navigation{grid-area:1/1}.legend{grid-area:1/2}.finance-strip{grid-area:2/1/auto/-1}.tennis-date-panel{grid-template-columns:minmax(340px,auto) 1fr auto}.tennis-date-panel .date-navigation{grid-area:1/1}.tennis-hours{grid-area:1/2}.tennis-legend{grid-area:1/3}}.jh-home{--jh-blue:#143d7f;--jh-red:#9b211c;--jh-ink:#111418;--jh-cream:#f5f3ee;min-height:100vh;color:var(--jh-ink);background:#fff;font-family:Songti SC,STSong,Noto Serif SC,serif;overflow:hidden}.jh-home a{color:inherit;text-decoration:none}.jh-header{border-bottom:1px solid #dadada;justify-content:space-between;align-items:center;gap:40px;width:min(1480px,100% - 72px);height:148px;margin:0 auto;display:flex}.jh-brand{flex:none;align-items:center;gap:20px;display:flex}.jh-brand img{object-fit:cover;mix-blend-mode:multiply;width:106px;height:106px}.jh-brand span{color:var(--jh-blue);flex-direction:column;gap:3px;display:flex}.jh-brand b{letter-spacing:.08em;white-space:nowrap;font-size:clamp(28px,3vw,48px);line-height:1}.jh-brand small{letter-spacing:.24em;font-family:Arial,sans-serif;font-size:9px}.jh-nav{align-items:center;gap:clamp(24px,3.4vw,58px);font-size:17px;display:flex}.jh-nav a{white-space:nowrap;padding:12px 0;position:relative}.jh-nav a:after{content:"";background:var(--jh-red);height:2px;transition:right .28s;position:absolute;bottom:4px;left:0;right:100%}.jh-nav a:hover:after,.jh-nav a:focus-visible:after{right:0}.jh-nav .jh-login{border:1px solid var(--jh-ink);padding:11px 22px}.jh-menu-button{display:none}.jh-hero{grid-template-columns:minmax(360px,.78fr) minmax(560px,1.42fr);align-items:center;gap:clamp(44px,7vw,112px);width:min(1480px,100% - 72px);min-height:640px;margin:0 auto;padding:62px 0 78px;display:grid}.jh-intro{align-self:center;max-width:600px}.jh-kicker{color:var(--jh-red);letter-spacing:.24em;margin:0 0 24px;font-family:Arial,sans-serif;font-size:11px;font-weight:700}.jh-intro h1{letter-spacing:-.06em;margin:0;font-size:clamp(48px,5.3vw,82px);font-weight:500;line-height:1.02}.jh-intro h1 span{color:var(--jh-blue);letter-spacing:.02em;margin-top:10px;font-size:.62em;display:inline-block}.jh-lead{color:#55585d;max-width:520px;margin:34px 0 26px;font-size:16px;line-height:1.9}.jh-court-status{border-top:1px solid #d8d8d8;border-bottom:1px solid #d8d8d8;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:18px 0;font-size:13px;display:flex}.jh-court-status span{align-items:center;gap:7px;display:flex}.jh-court-status i{border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 4px #0000000d}.jh-court-status .is-busy{background:#cf4036}.jh-court-status .is-free{background:#20a75d}.jh-court-status a{color:var(--jh-blue);margin-left:auto;font-weight:700}.jh-contact-brief{color:#303238;flex-direction:column;gap:7px;margin-top:20px;font-size:14px;display:flex}.jh-gallery{color:#fff;background:#0b0f14;height:500px;position:relative;overflow:hidden;box-shadow:0 28px 70px #0c162338}.jh-gallery-topline{z-index:4;pointer-events:none;letter-spacing:.2em;background:linear-gradient(#07090cd9,#0000);justify-content:space-between;align-items:center;height:58px;padding:0 28px;font-family:Arial,sans-serif;font-size:10px;display:flex;position:absolute;inset:0 0 auto}.jh-gallery-track{height:100%;display:flex}.jh-venue-panel{color:#fff;text-align:left;cursor:pointer;isolation:isolate;border:0;border-right:1px solid #fff3;flex:1 1 0;min-width:0;padding:0;transition:flex .52s cubic-bezier(.2,.75,.2,1),filter .35s;position:relative;overflow:hidden}.jh-venue-panel:before,.jh-venue-panel:after{content:"";z-index:-2;transition:transform .7s cubic-bezier(.2,.75,.2,1),filter .4s;position:absolute;inset:0}.jh-venue-panel:after{z-index:-1;background:linear-gradient(#04070b0a 28%,#04070be0 100%)}.jh-venue-panel:not(.is-active){filter:saturate(.55)brightness(.72)}.jh-venue-panel.is-active{flex:3.4 1 0}.jh-venue-panel.is-active:before{transform:scale(1.08)}.jh-venue-panel.court-a:before{background:radial-gradient(circle at 68% 24%,#4b6887 0 3%,#0000 4%),linear-gradient(135deg,#324b62 0%,#111b26 58%,#0a0e14 100%)}.jh-venue-panel.court-b:before{background:radial-gradient(circle at 36% 20%,#d9dee4 0 2%,#0000 3%),linear-gradient(140deg,#a42620 0%,#481817 42%,#111923 100%)}.jh-venue-panel.court-c:before{background:radial-gradient(circle at 58% 25%,#d4d7dc 0 2%,#0000 3%),linear-gradient(140deg,#194f85 0%,#142d4b 43%,#0b1016 100%)}.jh-venue-panel.court-d:before{background:radial-gradient(circle at 24% 19%,#d8d1ba 0 2%,#0000 3%),linear-gradient(140deg,#73664b 0%,#2d2d2b 48%,#0d1012 100%)}.jh-court-lines{transform-origin:bottom;border:2px solid #fff3;position:absolute;inset:25% 9% 21%;transform:perspective(420px)rotateX(55deg)}.jh-court-lines:before,.jh-court-lines:after{content:"";background:#ffffff38;position:absolute}.jh-court-lines:before{width:2px;top:0;bottom:0;left:50%}.jh-court-lines:after{height:2px;top:48%;left:0;right:0}.jh-panel-no{letter-spacing:.16em;opacity:.75;font-family:Arial,sans-serif;font-size:11px;position:absolute;top:74px;left:24px}.jh-panel-copy{flex-direction:column;gap:7px;transition:transform .38s;display:flex;position:absolute;bottom:38px;left:24px;right:18px;transform:translateY(8px)}.jh-panel-copy b{white-space:nowrap;font-size:clamp(18px,2vw,30px);line-height:1.15}.jh-panel-copy small{opacity:0;white-space:nowrap;max-width:260px;font-family:PingFang SC,sans-serif;font-size:11px;transition:opacity .3s .12s,transform .3s .12s;overflow:hidden;transform:translateY(6px)}.jh-venue-panel.is-active .jh-panel-copy{transform:translateY(0)}.jh-venue-panel.is-active .jh-panel-copy small{opacity:.72;transform:translateY(0)}.jh-gallery-arrow{z-index:6;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#06090d8c;border:1px solid #ffffff8c;border-radius:50%;width:46px;height:46px;transition:background .2s,transform .2s;position:absolute;top:50%;transform:translateY(-50%)}.jh-gallery-arrow:hover{background:var(--jh-red);transform:translateY(-50%)scale(1.07)}.jh-gallery-arrow.is-prev{left:16px}.jh-gallery-arrow.is-next{right:16px}.jh-photo-note{z-index:5;letter-spacing:.06em;opacity:.62;margin:0;font-family:PingFang SC,sans-serif;font-size:9px;position:absolute;bottom:15px;right:26px}.jh-services{background:var(--jh-cream);padding:110px max(36px,50vw - 740px)}.jh-section-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px;display:flex}.jh-section-heading p{color:var(--jh-red);letter-spacing:.22em;margin:0;font-family:Arial,sans-serif;font-size:10px;font-weight:700}.jh-section-heading h2{letter-spacing:-.04em;margin:0;font-size:clamp(32px,4vw,56px);font-weight:500}.jh-service-grid{grid-template-rows:1fr 1fr;grid-template-columns:1.05fr .95fr;gap:18px;display:grid}.jh-service-card{background:0 0;border:1px solid #25282b;grid-template-columns:auto 1fr auto;align-items:end;gap:28px;min-height:190px;padding:30px 34px;transition:color .35s,background .35s,transform .35s;display:grid;position:relative;overflow:hidden}.jh-service-card.is-large{grid-row:1/3;min-height:398px}.jh-service-card:before{content:"";z-index:0;background:var(--jh-blue);transition:inset .38s cubic-bezier(.2,.75,.2,1);position:absolute;inset:100% 0 0}.jh-service-card.is-accent:before{background:var(--jh-red)}.jh-service-card:hover{color:#fff;transform:translateY(-4px)}.jh-service-card:hover:before{inset:0}.jh-service-card>*{z-index:1;position:relative}.jh-service-card>span{align-self:start;font-family:Arial,sans-serif;font-size:11px}.jh-service-card h3{letter-spacing:-.03em;margin:0 0 10px;font-size:clamp(30px,4vw,58px);font-weight:500}.jh-service-card p{color:#6a6c70;max-width:420px;margin:0;font-family:PingFang SC,sans-serif;font-size:13px;line-height:1.7;transition:color .35s}.jh-service-card:hover p{color:#ffffffb8}.jh-service-card>b{font-family:Arial,sans-serif;font-size:28px;font-weight:400}.jh-event-strip{background:var(--jh-blue);color:#fff;grid-template-columns:.6fr 1.5fr 1fr auto;align-items:center;gap:34px;padding:50px max(36px,50vw - 740px);display:grid}.jh-event-strip p,.jh-event-strip span{opacity:.66;margin:0;font-size:12px}.jh-event-strip h2{margin:0;font-size:clamp(22px,2.4vw,34px);font-weight:500}.jh-event-strip a{white-space:nowrap;border-bottom:1px solid #fff9;padding-bottom:4px}.jh-footer{color:#fff;background:#0e1116;grid-template-columns:1fr auto auto;align-items:center;gap:36px;min-height:190px;padding:36px max(36px,50vw - 740px);display:grid}.jh-footer div{align-items:center;gap:14px;display:flex}.jh-footer img{border-radius:50%}.jh-footer p,.jh-footer span{color:#989da6;margin:0;font-size:12px}@media (width<=980px){.jh-header{width:calc(100% - 40px);height:96px}.jh-brand img{width:68px;height:68px}.jh-brand b{font-size:28px}.jh-brand small{display:none}.jh-menu-button{z-index:20;background:#fff;border:1px solid #c8c8c8;place-content:center;gap:5px;width:42px;height:42px;display:grid;position:relative}.jh-menu-button i{background:#111;width:20px;height:1px;display:block}.jh-nav{z-index:15;visibility:hidden;opacity:0;background:#fffffffa;flex-direction:column;justify-content:center;gap:22px;font-size:26px;transition:all .25s;display:flex;position:fixed;inset:0;transform:translateY(-16px)}.jh-nav.is-open{visibility:visible;opacity:1;transform:none}.jh-hero{grid-template-columns:1fr;gap:46px;width:calc(100% - 40px);padding:48px 0 64px}.jh-intro{max-width:680px}.jh-lead{max-width:640px}.jh-gallery{height:470px}.jh-section-heading{flex-direction:column;align-items:start}.jh-service-grid{grid-template-rows:auto;grid-template-columns:1fr}.jh-service-card.is-large{grid-row:auto;min-height:260px}.jh-service-card{min-height:210px}.jh-event-strip{grid-template-columns:1fr;gap:14px}.jh-footer{grid-template-columns:1fr;gap:18px}}@media (width<=620px){.jh-header{width:calc(100% - 28px)}.jh-brand{gap:9px}.jh-brand img{width:58px;height:58px}.jh-brand b{font-size:21px}.jh-hero{width:calc(100% - 28px);padding-top:38px}.jh-intro h1{font-size:48px}.jh-lead{margin-top:24px;font-size:14px}.jh-court-status{flex-direction:column;align-items:flex-start}.jh-court-status a{margin-left:0}.jh-gallery{height:420px}.jh-gallery-track{flex-direction:column}.jh-venue-panel{border-bottom:1px solid #ffffff2e;border-right:0;width:100%;min-height:0}.jh-venue-panel.is-active{flex:4.2 1 0}.jh-panel-no{top:13px;left:18px}.jh-panel-copy{bottom:13px;left:56px}.jh-panel-copy b{font-size:18px}.jh-gallery-arrow{top:auto;bottom:14px;transform:none}.jh-gallery-arrow:hover{transform:scale(1.05)}.jh-gallery-arrow.is-prev{left:auto;right:70px}.jh-gallery-arrow.is-next{right:16px}.jh-gallery-topline{height:44px;padding:0 18px}.jh-photo-note{display:none}.jh-services{padding:76px 14px}.jh-section-heading h2{font-size:37px}.jh-service-card,.jh-service-card.is-large{gap:14px;min-height:220px;padding:24px 22px}.jh-service-card h3{font-size:34px}.jh-service-card p{font-size:12px}.jh-event-strip,.jh-footer{padding-left:20px;padding-right:20px}}@media (prefers-reduced-motion:reduce){.jh-home *,.jh-home :before,.jh-home :after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
