/* Scoped to booking checkout and its administrator payment connection panel. */
#grh-book{max-width:none;margin-inline:0;padding:28px;background:#fbfcfa;border:1px solid #e2e8e2;border-radius:20px;box-sizing:border-box}
#grh-book *{box-sizing:border-box}
#grh-book .grh-layout{grid-template-columns:minmax(0,1.65fr) minmax(240px,1fr);gap:28px}
#grh-book .grh-checkout-main{min-width:0}
#grh-book .grh-steps{list-style:none;padding:0 0 24px;margin:0 0 28px;border-bottom:1px solid #dfe7e0;gap:24px;font-size:.88rem;align-items:center}
#grh-book .grh-steps li{display:flex;align-items:center;gap:9px;color:#77847b}
#grh-book .grh-steps li>span{display:grid;place-items:center;width:30px;height:30px;border:1px solid #d7e1d8;border-radius:50%;font-size:.8rem}
#grh-book .grh-steps strong{color:inherit;font-weight:500}
#grh-book .grh-steps [aria-current=step]{color:#164e40}
#grh-book .grh-steps [aria-current=step]>span{color:#fff;background:#164e40;border-color:#164e40}
#grh-book .grh-steps .grh-step-done>span{background:#e4eee6;color:#164e40}
#grh-book .grh-stay-details{padding-bottom:20px}
#grh-book .grh-stay-details>h2{font-size:1.75rem;line-height:1.25;letter-spacing:-.025em;margin-bottom:8px}
#grh-book .grh-stay-details>h3{font-size:1.02rem;margin-top:24px;margin-bottom:12px}
#grh-book .grh-stay-details>p{line-height:1.7}
#grh-book .grh-cover{margin-top:6px;border-radius:14px;height:280px}
#grh-book .grh-host{border-bottom:1px solid #e2e8e2;padding-bottom:20px;font-size:.9rem}
#grh-book .grh-host img{width:48px;height:48px}
#grh-book .grh-host a{color:#164e40;font-weight:650}
#grh-book .grh-tags{gap:7px}
#grh-book .grh-tags li{background:#eef3ec;border:1px solid #e2eadf;border-radius:6px;padding:6px 10px}
#grh-book .grh-rules{font-size:.9rem}
#grh-book .grh-stay-selection,#grh-book #grh-guest-area:not(:empty),#grh-book .grh-payment-panel{background:#fff;border:1px solid #dfe7de;border-radius:16px;padding:24px;margin:0 0 22px}
.grh-section-heading{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.grh-section-heading h3{margin:0;font-size:1.15rem;letter-spacing:-.015em}
.grh-section-heading p{margin:5px 0 0;color:#687a70;font-size:.85rem}
.grh-section-number{display:grid;place-items:center;background:#edf3eb;color:#245443;flex:0 0 40px;height:40px;border-radius:11px;font-size:.83rem;font-weight:700}
.grh-section-number svg{width:23px;height:23px}
#grh-book #grh-dates{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 12px}
#grh-book .grh-date-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:6px}
#grh-book .grh-date-field{min-width:0}
#grh-book .grh-date-button{display:grid;grid-template-columns:minmax(0,1fr) 23px;width:100%;text-align:left;cursor:pointer;font-family:inherit;min-width:0;border:1px solid #c9d7ca;border-radius:12px;padding:14px 16px 6px;background:#f9fbf7;gap:5px;color:#5c7165;font-size:.76rem;font-weight:650;letter-spacing:.055em;text-transform:uppercase;transition:border-color .16s,box-shadow .16s}
#grh-book .grh-date-button[aria-pressed=true],#grh-book .grh-date-button:focus-visible{border-color:#3b7159;box-shadow:0 0 0 2px #e9f0e6}
#grh-book .grh-date-label{grid-column:1/-1}
#grh-book .grh-date-value{display:flex;align-items:center;padding:5px 0;min-height:44px;min-width:0;font-size:calc(1.05rem + 2px);font-weight:650;color:#173d39;letter-spacing:normal;text-transform:none;line-height:1.4}
#grh-book .grh-date-button svg{width:23px;height:23px;align-self:center;color:#5c7165}
#grh-book .grh-date-button:disabled{cursor:default;opacity:.7}
#grh-book .grh-form-grid>label{font-size:.85rem;gap:8px;font-weight:550;min-width:0}
#grh-book .grh-form-grid input:not([type=checkbox]):not([type=date]),#grh-book .grh-form-grid select,#grh-book .grh-form-grid textarea{min-height:48px;border-color:#d5dfd5;border-radius:9px;font-size:.95rem;min-width:0}
#grh-book .grh-form-grid input:focus-visible,#grh-book .grh-form-grid select:focus-visible,#grh-book .grh-form-grid textarea:focus-visible{outline:2px solid #38705b;outline-offset:2px}
#grh-book .grh-calendar{width:100%;max-width:392px;margin:22px auto 16px;border-color:#e1e8df;border-radius:14px;padding:16px;background:#fff}
#grh-book .grh-calendar-nav{margin-bottom:8px}
#grh-book .grh-calendar-nav strong{font-size:calc(.95rem + 2px);text-transform:capitalize}
#grh-book .grh-calendar-nav button{width:34px;height:34px;padding:0;border-radius:50%;background:#f6f8f3;border-color:#e3e9dd;font-size:1rem}
#grh-book .grh-calendar-prompt{font-size:.78rem;text-align:center;color:#64776b;margin:8px 0 14px;font-weight:500}
#grh-book .grh-calendar-grid{gap:4px}
#grh-book .grh-calendar-grid button{aspect-ratio:1;max-height:46px;min-height:34px;border-radius:9px;background:#f7f9f4;font-size:.88rem;transition:background .15s,color .15s}
#grh-book .grh-calendar-grid button:not(:disabled):hover{background:#e5eee1;outline:1px solid #bed0bb}
#grh-book .grh-calendar-grid button:focus-visible{outline:2px solid #396b53;outline-offset:1px}
#grh-book .grh-calendar-grid button:disabled{background:#fafbf9;color:#a9b2aa}
#grh-book .grh-calendar-grid button.grh-selected{background:#245d48;color:#fff;outline:0}
#grh-book .grh-calendar-grid button.grh-range{background:#e2eddd;color:#26543e}
#grh-book .grh-calendar-grid small{font-size:.7rem;color:#78867b;font-weight:600}
#grh-book .grh-note{border:1px solid #e5eadd;border-left:3px solid #b5c6a4;border-radius:8px;font-size:.8rem;line-height:1.6;padding:12px 14px;background:#f7f9f3}
#grh-book .grh-status{font-size:.85rem}
#grh-book .grh-status:empty{display:none}
#grh-book #grh-guest-form{gap:18px 16px}
#grh-book #grh-guest-form input[type=file]{padding:9px;font-size:.76rem;background:#fbfcf9;max-width:100%}
#grh-book input[type=file]::file-selector-button{font:inherit;background:#eef3e8;border:1px solid #d7e2cf;border-radius:6px;padding:6px 8px;margin-right:8px;color:#28523d}
#grh-book .grh-check{font-size:.84rem;line-height:1.6}
#grh-book .primary-button{border-radius:10px;min-height:50px;padding:13px 20px}
#grh-book .grh-summary{top:24px;background:#fff;border:1px solid #dbe4d8;padding:24px;border-radius:16px;box-shadow:0 8px 30px rgba(37,66,41,.05)}
#grh-book .grh-summary>.eyebrow{font-size:.67rem;margin:0 0 12px;letter-spacing:.12em;color:#697c6d}
#grh-book .grh-summary>h3{font-size:1.8rem;letter-spacing:-.025em;margin:0 0 24px}
#grh-book .grh-summary>h3 small{font-size:.8rem;letter-spacing:0;font-weight:400;color:#687c6d}
#grh-book .grh-summary-dates{display:grid;grid-template-columns:1fr 1fr;border:1px solid #e0e7db;border-radius:9px;margin-bottom:16px}
#grh-book .grh-summary-dates>div{display:grid;gap:8px;padding:12px}
#grh-book .grh-summary-dates>div+div{border-left:1px solid #e0e7db}
#grh-book .grh-summary-dates small{font-size:.7rem;color:#738170}
#grh-book .grh-summary-dates strong{font-size:.8rem}
#grh-book .grh-summary p{font-size:.85rem;line-height:1.7}
#grh-book .grh-money{font-size:.88rem;row-gap:15px;margin:20px 0}
#grh-book .grh-money dt:nth-of-type(3),#grh-book .grh-money dd:nth-of-type(3){border-top:1px solid #e2e8de;padding-top:17px;font-weight:700;font-size:1.03rem}
#grh-book #grh-countdown:not(:empty){background:#f1f5eb;border-radius:7px;padding:10px 12px;font-size:.78rem;font-variant-numeric:tabular-nums}
#grh-book .grh-summary .secondary-button{width:100%;font-size:.77rem;padding:11px 8px;min-height:42px;border-radius:8px}
#grh-book .grh-summary .grh-payment-overview h4{font-size:.82rem;margin:7px 0}
#grh-book .grh-payment-overview p,#grh-book .grh-payment-overview small{font-size:.74rem}
#grh-book .grh-payment-panel>h3{font-size:1.15rem;margin:0 0 8px}
#grh-book .grh-payment-panel>p:first-of-type{font-size:.85rem;color:#6b7a6b;line-height:1.6;margin:0 0 20px}
#grh-book .grh-payment-options{gap:9px}
#grh-book .grh-payment-options .grh-payment-method{padding:14px;border-radius:10px;border-color:#d7e2d0;gap:12px;min-height:66px}
#grh-book .grh-payment-method>svg{width:26px;height:26px;color:#37614b}
#grh-book .grh-payment-name strong{font-size:.9rem;font-weight:600}
#grh-book .grh-payment-name small{font-size:.72rem;color:#71806d}
#grh-book .grh-payment-state{font-size:.7rem;line-height:1.4;background:#eef4e9;border-radius:5px;padding:5px 7px;max-width:38%}
#grh-book .grh-payment-unavailable .grh-payment-state{background:#eef0ea;color:#76816f}
#grh-book .grh-payment-options .grh-payment-unavailable{background:#fafbf8;border-color:#e4e9df}
#grh-book .grh-policy{padding:18px 4px;border-top:1px solid #dfe7da;font-size:.86rem}
.grh-setup-panel{border:1px solid #dbd6bd;border-radius:14px;padding:22px;background:#fffdf5;margin:0 0 24px;font-size:.9rem}
.grh-setup-panel .eyebrow{margin:0 0 5px;font-size:.7rem}
.grh-setup-checks{list-style:none;padding:0;margin:16px 0}
.grh-setup-checks li{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #e8e4d2}
.grh-setup-checks strong{font-size:.78rem;font-weight:600}
.grh-check-ok{color:#246047}.grh-check-needed{color:#8b631b}
.grh-setup-panel .grh-actions{align-items:center}.grh-setup-panel form{margin:0}
.grh-setup-panel .grh-actions a,.grh-setup-panel .grh-actions button{font-size:.83rem}
@media(max-width:1000px){#grh-book{padding:24px}#grh-book .grh-stay-selection,#grh-book #grh-guest-area:not(:empty),#grh-book .grh-payment-panel{padding:20px}#grh-book .grh-date-fields{gap:10px}#grh-book .grh-date-button{padding:12px 10px 6px}#grh-book .grh-summary{padding:20px}}
@media(max-width:800px){#grh-book .grh-layout{grid-template-columns:1fr}#grh-book .grh-summary{position:static}#grh-book .grh-steps{gap:20px}#grh-book .grh-calendar{max-width:392px}}
@media(max-width:520px){#grh-book{padding:16px;border-radius:14px}#grh-book .grh-steps{gap:12px;justify-content:space-between;font-size:.68rem;flex-wrap:nowrap;padding-bottom:18px;margin-bottom:22px}#grh-book .grh-steps li{gap:6px}#grh-book .grh-steps li>span{width:24px;height:24px;flex:none;font-size:.7rem}#grh-book .grh-stay-details>h2{font-size:1.45rem}#grh-book .grh-cover{height:220px}#grh-book .grh-stay-selection,#grh-book #grh-guest-area:not(:empty),#grh-book .grh-payment-panel{padding:16px}#grh-book #grh-dates{grid-template-columns:1fr 1fr}#grh-book .grh-date-fields{gap:10px}#grh-book .grh-date-button{grid-template-columns:minmax(0,1fr) 18px;font-size:.65rem;letter-spacing:.035em;padding:12px 9px 6px}#grh-book .grh-date-value{font-size:calc(.9rem + 2px);min-height:46px}#grh-book .grh-date-button svg{width:18px;height:18px}#grh-book .grh-calendar{padding:10px}#grh-book .grh-calendar-grid{gap:3px}#grh-book .grh-calendar-grid button{min-height:30px}#grh-book .grh-section-heading{gap:10px}#grh-book .grh-section-heading h3{font-size:1.05rem}#grh-book .grh-payment-method>svg{width:22px;height:22px}#grh-book .grh-payment-options .grh-payment-method{gap:9px;padding:12px}#grh-book .grh-payment-name strong{font-size:.82rem}#grh-book .grh-payment-state{font-size:.63rem}.grh-setup-panel{padding:16px}}
@media(prefers-reduced-motion:reduce){#grh-book *{scroll-behavior:auto!important;transition:none!important}}
