/* BEM-TEC Core 0.4.0 — scoped styling, safe to use independently of the theme. */
.btv2-request{--form-accent:#096ba8;--form-line:#dde3e7;--form-ink:#283843;--form-muted:#64747f;min-width:0;color:var(--form-ink);font-family:inherit;line-height:1.6;container-type:inline-size}
.btv2-request *{box-sizing:border-box}
.btv2-request [hidden]{display:none!important}
.btv2-form{margin:0;position:relative;min-width:0}
.btv2-step{border:0;margin:0;padding:0;min-width:0}
.btv2-heading{margin-bottom:25px}
.btv2-eyebrow{display:block;color:var(--form-accent);font:500 10px/1.6 ui-monospace,Consolas,monospace;letter-spacing:.16em;margin-bottom:9px}
.btv2-heading h3{font-size:30px;line-height:1.22;font-weight:600;letter-spacing:-.03em;margin:0;color:#203541}
.btv2-progress{gap:7px;margin-bottom:20px}
.btv2-progress span{display:block;height:4px;flex:1;border-radius:3px;background:#d9dee1}
.btv2-progress span.active{background:var(--form-accent)}
.btv2-step-caption{justify-content:space-between;gap:20px;margin-bottom:22px;color:#486272;font:500 10px/1.6 ui-monospace,monospace;letter-spacing:.09em}
.btv2-step-caption [data-step-count]{white-space:nowrap;color:var(--form-accent)}
.btv2-mode{border:0;margin:0 0 23px;padding:4px;display:grid;grid-template-columns:.8fr 1.3fr 1.1fr;gap:3px;background:#eff3f5;border-radius:10px;min-width:0}
.btv2-mode label{display:flex;min-width:0;position:relative;cursor:pointer;margin:0}
.btv2-mode input{position:absolute;opacity:0;width:1px;height:1px}
.btv2-mode span{display:flex;align-items:center;justify-content:center;min-height:43px;text-align:center;width:100%;padding:8px;font-size:12px;line-height:1.5;color:#576d7b;border-radius:7px;transition:background .18s,box-shadow .18s}
.btv2-mode input:checked+span{background:white;box-shadow:0 1px 4px #1b3c5614;color:#096597}
.btv2-mode input:focus-visible+span{outline:3px solid #1680ba;outline-offset:2px}
.btv2-form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.btv2-full{grid-column:1/-1}
.btv2-field{min-width:0}
.btv2-field>label{display:block;font-size:13px;font-weight:500;line-height:1.5;color:#415965;margin-bottom:7px}
.btv2-field input:not([type=checkbox]),.btv2-field select,.btv2-field textarea{border:1px solid var(--form-line);border-radius:10px;background:#fff;color:#263b49;display:block;width:100%;min-width:0;min-height:54px;box-shadow:none;padding:13px 15px;font-family:inherit;font-size:16px;font-weight:400;line-height:1.5;transition:border-color .18s,box-shadow .18s}
.btv2-field input::placeholder,.btv2-field textarea::placeholder{color:#76848f;opacity:1}
.btv2-field input:focus,.btv2-field select:focus,.btv2-field textarea:focus{outline:2px solid #237faf;outline-offset:1px;border-color:#237faf}
.btv2-field [aria-invalid=true]{border-color:#a84230;box-shadow:0 0 0 1px #a84230}
.btv2-field select:disabled{background:#f4f6f7;color:#667986;cursor:default}
.btv2-service-picker{display:none;position:relative}
.btv2-form.is-enhanced .btv2-service-picker{display:block}
.btv2-form.is-enhanced .btv2-service-native{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;margin:-1px!important;padding:0!important;border:0!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;overflow:hidden!important;white-space:nowrap!important}
.btv2-service-picker-button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:54px;padding:13px 15px;border:1px solid var(--form-line);border-radius:10px;background:#fff;color:#263b49;font-family:inherit;font-size:16px;font-weight:400;line-height:1.5;text-align:left;cursor:pointer}
.btv2-service-picker-button::after{content:"";width:0;height:0;flex:0 0 auto;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid #36596d;transition:transform .18s}
.btv2-service-picker-button[aria-expanded=true]::after{transform:rotate(180deg)}
.btv2-service-picker-button:focus-visible{outline:2px solid #237faf;outline-offset:1px;border-color:#237faf}
.btv2-service-picker-panel{max-height:min(320px,55vh);overflow-y:auto;overscroll-behavior:contain;margin-top:7px;padding:7px;border:1px solid #cbd8df;border-radius:11px;background:#fff;box-shadow:0 14px 30px #17334620;scrollbar-gutter:stable}
.btv2-service-picker-section{margin-top:7px;padding-top:7px;border-top:1px solid #dce5ea}
.btv2-service-picker-group{padding:7px 11px 6px;color:#365b71;background:#f5f8fa;border-radius:7px;font:600 11px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.07em;text-transform:uppercase}
.btv2-service-picker-option{display:block;width:100%;min-height:44px;padding:10px 12px;border:0;border-radius:8px;background:#fff;color:#294454;font-family:inherit;font-size:15px;font-weight:400;line-height:1.45;text-align:left;cursor:pointer}
.btv2-service-picker-option:hover,.btv2-service-picker-option:focus-visible{background:#edf5f9;outline:0}
.btv2-service-picker-option[aria-selected=true]{background:#e3f0f7;color:#075f95;font-weight:600}
.btv2-field textarea{min-height:120px;resize:vertical}
.btv2-field input[type=file]{padding:12px;font-size:13px;background:#fafbfc;min-height:auto}
.btv2-field input[type=file]::file-selector-button{border:0;border-radius:6px;padding:9px 10px;background:#e2edf3;color:#145980;margin-right:10px;font:600 12px system-ui;cursor:pointer}
.btv2-field-hint,.btv2-field small:not(.btv2-field-error){display:block;font-size:12px;line-height:1.65;color:var(--form-muted);margin:6px 0 1px;overflow-wrap:anywhere}
.btv2-form-grid>.btv2-field-hint{margin-top:-9px}
.btv2-information{margin:23px 0 22px;font-size:13px;line-height:1.75;color:#5e7380}
.btv2-submit,.btv2-back,.btv2-new-request{font-family:inherit;font-size:14px;font-weight:600;line-height:1.4;cursor:pointer}
.btv2-submit{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;border:1px solid var(--form-accent);background:var(--form-accent);color:#fff;border-radius:10px;min-height:51px;padding:13px 18px;text-decoration:none;transition:background .18s,border-color .18s;text-align:center}
.btv2-submit:hover{background:#07568a;border-color:#07568a}
.btv2-submit:disabled{opacity:.6;cursor:wait}
.btv2-submit:focus-visible,.btv2-back:focus-visible,.btv2-new-request:focus-visible{outline:3px solid #b18541;outline-offset:3px}
.btv2-nav{display:flex;align-items:stretch;gap:10px;padding-top:23px;margin-top:25px;border-top:1px solid var(--form-line)}
.btv2-nav .btv2-submit{flex:1;min-width:0}
.btv2-back{border:1px solid var(--form-line);background:white;color:#496473;padding:11px 18px;border-radius:10px;white-space:nowrap;font-weight:500}
.btv2-back:hover{background:#f1f5f7}
.btv2-new-request{border:1px solid #d2dce1;border-radius:10px;padding:13px 18px;background:#fff;color:#214b65}
.btv2-test-note{margin:20px 0 0;color:#677f8e;font-size:10px;line-height:1.7;border-top:1px solid #e6ecef;padding-top:12px}
.btv2-error-summary{background:#fcf2ee;border:1px solid #dda798;border-radius:10px;padding:13px 16px;color:#8c2e22;font-size:14px;line-height:1.5;margin-bottom:20px;overflow-wrap:anywhere}
.btv2-field-error{display:block;color:#9b3325;font-size:12px;line-height:1.45;margin:7px 0 0}
.btv2-extra{border:1px solid var(--form-line);border-radius:10px;padding:0 15px;margin-top:20px}
.btv2-extra summary{cursor:pointer;list-style:none;padding:15px 0;display:flex;justify-content:space-between;gap:14px;font-size:13px;font-weight:550}
.btv2-extra summary::-webkit-details-marker{display:none}
.btv2-extra summary span{font-size:20px;line-height:1}
.btv2-extra[open] summary span{transform:rotate(45deg)}
.btv2-extra .btv2-form-grid{padding-bottom:17px}
.btv2-check{display:flex;align-items:flex-start;gap:12px;cursor:pointer;margin-top:18px;font-size:14px;font-weight:550;line-height:1.5}
.btv2-check input{width:19px;height:19px;flex-shrink:0;margin:1px 0 0;accent-color:var(--form-accent)}
.btv2-check small{display:block;font-size:12px;color:#617581;font-weight:400;margin-top:5px}
.btv2-confirmation-note{background:#edf4f7;border:1px solid #d8e6ee;border-radius:10px;padding:15px 17px;font-size:13px;line-height:1.7;color:#405e70;margin:22px 0 16px}
.btv2-privacy-note{font-size:12px;color:#5e7380;line-height:1.7}
.btv2-privacy-note a{color:#096799;text-decoration:underline;text-underline-offset:3px}
.btv2-honey{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.btv2-sr-only{position:absolute!important;clip:rect(0,0,0,0);clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}
.btv2-js-only,.btv2-calendar,.btv2-progress,.btv2-step-caption{display:none}
.btv2-form.is-enhanced .btv2-js-only{display:flex}
.btv2-form.is-enhanced .btv2-calendar{display:block}
.btv2-form.is-enhanced .btv2-progress,.btv2-form.is-enhanced .btv2-step-caption{display:flex}
.btv2-form.is-enhanced .btv2-native-date{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}
/* Calendar and requested-time panel. Blue means selected, not available capacity. */
.btv2-calendar-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:25px;align-items:start}
.btv2-calendar{margin:0;background:#fff;min-width:0}
.btv2-calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;gap:12px;min-height:36px}
.btv2-calendar-head strong{font:500 12px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.05em;text-transform:uppercase;color:#3f5b70}
.btv2-calendar-head>div{display:flex;gap:7px}
.btv2-calendar-head button{border:1px solid #dde5e9;background:#fff;border-radius:9px;width:34px;height:34px;font-size:22px;line-height:1;color:#385b6f;cursor:pointer}
.btv2-calendar-head button:disabled{opacity:.3;cursor:default}
.btv2-weekdays,.btv2-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.btv2-weekdays{font:500 10px/1.6 ui-monospace,monospace;color:#668090;text-align:center;padding-bottom:11px}
.btv2-days button,.btv2-days>span{height:42px;min-width:0;width:100%;display:grid;place-content:center}
.btv2-days button{border:1px solid #dde7ed;border-radius:9px;background:#f4f8fa;color:#2b4b60;font:500 13px/1 system-ui;cursor:pointer}
.btv2-days button:hover:not(:disabled){background:#e2eff7;border-color:#8bb6ce}
.btv2-days button[aria-pressed=true]{background:var(--form-accent);color:#fff;border-color:var(--form-accent)}
.btv2-days button:disabled{color:#8c9eaa;background:transparent;border-color:transparent;cursor:default}
.btv2-days button[data-today=true]{border-color:#94b4c7}
.btv2-days button:focus-visible,.btv2-calendar button:focus-visible{outline:3px solid #b68f50;outline-offset:2px}
.btv2-date-any{margin-top:20px;border:1px solid #d6e2e9;background:#fff;border-radius:9px;width:100%;min-height:43px;padding:10px;color:#4a687b;font:500 12px/1.5 system-ui;cursor:pointer}
.btv2-date-any[aria-pressed=true]{background:#eaf3f8;color:#095f96;border-color:#a9c9dc}
.btv2-date-summary{background:#edf4f8;border:1px solid #c7dce9;border-radius:11px;padding:19px 17px;margin-bottom:22px}
.btv2-date-summary>span{display:block;font:500 10px/1.6 ui-monospace,monospace;letter-spacing:.13em;color:#557489;margin-bottom:13px}
.btv2-date-summary>div{display:flex;align-items:flex-start;gap:11px;margin-top:13px;font-size:13px;line-height:1.55}
.btv2-date-summary strong{font-weight:550;overflow-wrap:anywhere}
.btv2-date-summary svg{color:#4c798f;flex-shrink:0}
.btv2-time-aside{min-width:0;padding-top:3px}
.btv2-time-aside .btv2-field>label{font-size:12px}
.btv2-time-aside select{font-size:14px;min-height:48px;padding:11px 12px}
.btv2-time-help{font-size:12px;line-height:1.75;color:#697f8c;margin-top:14px}
.btv2-calendar-note{font-size:12px;line-height:1.75;color:#5b7484;padding-top:19px;margin-top:20px;margin-bottom:0;border-top:1px solid #e1e9ef}
.btv2-when{margin-bottom:26px}
/* Third step: calm list rows, not another set of fields. */
.btv2-review{border:1px solid #dce5ea;border-radius:11px;overflow:hidden;margin:0;background:white}
.btv2-review dl{margin:0}
.btv2-review-row{display:grid;grid-template-columns:minmax(125px,.85fr) minmax(0,1.45fr);align-items:start;gap:20px;padding:15px 17px;font-size:14px;line-height:1.6}
.btv2-review-row+.btv2-review-row{border-top:1px solid #e3e8eb}
.btv2-review dt{display:flex;gap:12px;align-items:center;font:500 10px/1.6 ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase;color:#587184}
.btv2-row-icon{display:grid;place-content:center;flex:0 0 28px;height:28px;background:#edf4f8;border-radius:6px;color:#296981}
.btv2-review dd{margin:3px 0 0;overflow-wrap:anywhere;white-space:pre-wrap;text-align:right;color:#2c4b5d}
.btv2-review-price{background:#eff5f8;font-size:13px}
.btv2-success{text-align:left;padding:10px 0;line-height:1.7}
.btv2-success h3{font-size:27px;line-height:1.3;letter-spacing:-.03em;margin-top:20px}
.btv2-success p{font-size:15px}
.btv2-success-icon{display:grid;place-content:center;background:#e0f3ed;color:#147556;width:60px;height:60px;border-radius:50%;font-size:30px}
.btv2-reference{padding:14px;border-radius:10px;background:#edf4f8;overflow-wrap:anywhere}
.btv2-success .btv2-submit{margin-bottom:12px}
.btv2-success-call{display:block;color:var(--form-accent);font-size:14px;margin:18px 0;text-decoration:underline;text-underline-offset:4px}
@container(max-width:555px){
 .btv2-calendar-layout{grid-template-columns:1fr;gap:22px}
 .btv2-time-aside{display:grid;grid-template-columns:1fr 1fr;gap:15px;align-items:center}
 .btv2-date-summary{margin:0;padding:15px}.btv2-time-help{grid-column:1/-1;margin:0}
 .btv2-days button,.btv2-days>span{height:44px}
}
@container(max-width:360px){
 .btv2-form-grid{gap:14px 11px}
 .btv2-field input:not([type=checkbox]),.btv2-field select,.btv2-field textarea{padding:12px 11px;font-size:16px;min-height:52px}
 .btv2-field>label{font-size:12px}.btv2-field-hint{font-size:11px}
 .btv2-heading h3{font-size:28px}.btv2-mode span{font-size:11px;padding:8px 5px}
 .btv2-step-caption{font-size:9px;letter-spacing:.04em;gap:10px}
 .btv2-time-aside{grid-template-columns:1fr;gap:15px}.btv2-date-summary{padding:16px}.btv2-time-help{grid-column:auto}
 .btv2-calendar-head strong{font-size:11px}.btv2-days{gap:4px}.btv2-days button,.btv2-days>span{height:40px}
 .btv2-review-row{grid-template-columns:1fr;gap:7px;padding:14px 16px}.btv2-review dd{text-align:left;margin:0 0 0 40px}
 .btv2-nav{gap:9px}.btv2-back{padding:10px 12px;font-size:12px}.btv2-submit{font-size:13px;padding-inline:12px}
}
@container(max-width:260px){.btv2-form-grid{grid-template-columns:1fr}.btv2-mode{grid-template-columns:1fr}.btv2-days{gap:2px}.btv2-days button,.btv2-days>span{height:34px}.btv2-calendar-head button{width:30px;height:30px}.btv2-calendar-head strong{font-size:10px}}
@media(prefers-reduced-motion:reduce){.btv2-request *{scroll-behavior:auto!important;transition:none!important}}

/* Alpha.4: optional-description hint and the approved WhatsApp secondary action. */
.btv2-request a.btv2-whatsapp{background:#fff;color:#203d33;border:1px solid #91cdb0;display:inline-flex;gap:10px;align-items:center;justify-content:center}
.btv2-request a.btv2-whatsapp svg{color:#00844a;flex:0 0 21px;width:21px;height:21px}
.btv2-request a.btv2-whatsapp:hover{background:#f0faf5;border-color:#00844a;color:#203d33}
.btv2-request a.btv2-whatsapp:focus-visible{outline:3px solid #00844a;outline-offset:3px}
.btv2-manage{max-width:860px;margin-inline:auto}.btv2-manage fieldset{border:0;padding:0;margin:0;min-width:0}.btv2-manage form{display:grid;gap:20px}.btv2-manage [data-access-identity],.btv2-manage [data-access-title]{overflow-wrap:anywhere}.btv2-manage .btv2-check{grid-column:1/-1}.btv2-manage [data-access-message]{padding-block:12px}.btv2-manage [data-access-message]:empty{display:none}@container(max-width:555px){.btv2-manage .btv2-form-grid{grid-template-columns:1fr}}

.btv2-contact-options{border:0;padding:0;margin:0;min-width:0}.btv2-contact-options legend{font-weight:600}.btv2-contact-options p{font-size:14px;line-height:1.5;margin:6px 0 10px}.btv2-contact-options .btv2-check{display:inline-flex;margin:0 20px 10px 0;min-height:44px}
[data-access-actions]{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}[data-access-actions][hidden]{display:none}
[data-access-confirm]{width:calc(100% - 32px);max-width:540px;border:1px solid #cad4df;border-radius:16px;padding:24px;color:#14243b;max-height:85dvh;overflow:auto}[data-access-confirm]::backdrop{background:#0d1d35a6}[data-access-confirm] p{line-height:1.6}[data-access-confirm] button{margin-top:12px}
