/* EBC Hub: the website's public forms (Book a visit, Contact). Sits inside the Breakdance card, so no outer frame here. */
.ebcf{
	--f-navy:#071ea3; --f-blue:#0069f7; --f-ink:#121212; --f-muted:#3d4555; --f-subtle:#5b6475;
	--f-line:#dce6f2; --f-field:#cbd8ea; --f-ice:#eaf8ff; --f-ice2:#f4fbff; --f-paper:#f7f9fc;
	--f-ok:#12805c; --f-ok-bg:#ebf8f2; --f-ok-line:#bfe6d4;
	--f-warn:#8a5300; --f-warn-bg:#fff6e5; --f-warn-line:#f4d79b;
	--f-bad:#b42318; --f-bad-bg:#fff3f1;
	--f-ring:0 0 0 4px rgba(0,105,247,.16);
	--f-ease:cubic-bezier(.2,.7,.2,1);
	font-family:"DM Sans",system-ui,-apple-system,sans-serif; color:var(--f-ink); font-size:16px; line-height:1.45;
	-webkit-font-smoothing:antialiased;
}
.ebcf *,.ebcf *::before,.ebcf *::after{box-sizing:border-box}
.ebcf-i{width:20px;height:20px;flex:0 0 auto}
.ebcf-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* Steps */
.ebcf-step{border:0;margin:0;padding:0 0 30px;min-width:0}
.ebcf-step+.ebcf-step{padding-top:30px;border-top:1px solid var(--f-line)}
.ebcf-step__head{display:flex;align-items:center;gap:14px;padding:0;margin:0 0 20px;width:100%;float:left}
.ebcf-step__head+*{clear:both}
.ebcf-step__body{clear:both}
.ebcf-step__num{position:relative;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;
	background:var(--f-ice);color:var(--f-navy);font-weight:800;font-size:15px;box-shadow:inset 0 0 0 1px #cfe2f7;transition:background .25s,color .25s,box-shadow .25s}
.ebcf-step__num .ebcf-i{position:absolute;width:18px;height:18px;opacity:0;transform:scale(.4);transition:opacity .25s,transform .3s var(--f-ease);stroke-width:2.6}
.ebcf-step__num>span{transition:opacity .2s}
.ebcf-step.is-done .ebcf-step__num{background:var(--f-navy);color:#fff;box-shadow:none}
.ebcf-step.is-done .ebcf-step__num>span{opacity:0}
.ebcf-step.is-done .ebcf-step__num .ebcf-i{opacity:1;transform:none}
.ebcf-step__text{display:flex;flex-direction:column;gap:1px}
.ebcf-step__title{font-size:19px;font-weight:800;color:var(--f-navy);letter-spacing:-.01em;line-height:1.2}
.ebcf-step__sub{font-size:14px;color:var(--f-subtle)}

/* Fields */
.ebcf-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 20px}
.ebcf-grid+.ebcf-grid,.ebcf-field+.ebcf-grid,.ebcf-reveal+.ebcf-grid{margin-top:20px}
.ebcf-field{display:flex;flex-direction:column;gap:7px;min-width:0}
.ebcf-field--wide{grid-column:1/-1}
.ebcf-label{font-size:15px;font-weight:600;color:var(--f-ink);line-height:1.4}
.ebcf-opt-tag{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:#eef2f7;color:var(--f-subtle);font-size:11.5px;font-weight:600;letter-spacing:.02em;vertical-align:1px}
.ebcf input[type=text],.ebcf input[type=email],.ebcf input[type=tel],.ebcf textarea{
	-webkit-appearance:none;appearance:none;width:100%;margin:0;font:inherit;font-size:16px;color:var(--f-ink);background:#fff;
	border:1px solid var(--f-field);border-radius:10px;padding:13px 15px;min-height:52px;line-height:1.4;
	box-shadow:0 1px 2px rgba(7,30,163,.04);transition:border-color .18s,box-shadow .18s,background .18s}
.ebcf textarea{min-height:128px;resize:vertical}
.ebcf input::placeholder,.ebcf textarea::placeholder{color:#97a0b0}
.ebcf input:hover,.ebcf textarea:hover{border-color:#a9bedb}
.ebcf input:focus,.ebcf textarea:focus{outline:none;border-color:var(--f-blue);box-shadow:var(--f-ring)}
.ebcf-help{margin:0;font-size:13px;line-height:1.45;color:var(--f-subtle)}
.ebcf-err{margin:0;font-size:13.5px;font-weight:600;color:var(--f-bad);display:none;align-items:center;gap:6px}
.ebcf-field.has-error>.ebcf-err,.ebcf-field.has-error .ebcf-err{display:flex}
.ebcf-err::before{content:"";width:16px;height:16px;flex:0 0 auto;background:currentColor;
	-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7.5v5.5M12 16.5h.01'/%3E%3C/svg%3E") center/contain no-repeat;
	mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7.5v5.5M12 16.5h.01'/%3E%3C/svg%3E") center/contain no-repeat}
.ebcf-field.has-error input,.ebcf-field.has-error textarea{border-color:var(--f-bad);background:var(--f-bad-bg)}
.ebcf-field.has-error input:focus,.ebcf-field.has-error textarea:focus{box-shadow:0 0 0 4px rgba(180,35,24,.14)}
.ebcf-field.is-valid input:not(:focus){border-color:#9fd2bd}

/* Profession picker */
.ebcf-search{position:relative}
.ebcf-search>.ebcf-i{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--f-subtle);pointer-events:none;width:19px;height:19px}
.ebcf .ebcf-search input{padding-left:44px;padding-right:46px}
.ebcf-search__clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;border:0;background:transparent;color:var(--f-subtle);display:grid;place-items:center;cursor:pointer;padding:0}
.ebcf-search__clear:hover{background:#eef2f7;color:var(--f-ink)}
.ebcf-search__clear .ebcf-i{width:17px;height:17px}
.ebcf-pick{border:1px solid var(--f-line);border-radius:14px;background:#fff;overflow:hidden;margin-top:4px;box-shadow:0 6px 20px rgba(7,30,163,.06)}
.ebcf-pick[hidden]{display:none}
.ebcf-pick__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px 10px 16px;background:linear-gradient(180deg,var(--f-ice2),var(--f-ice));border-bottom:1px solid var(--f-line);font-size:14px;color:var(--f-muted)}
.ebcf-pick__count strong{color:var(--f-navy);font-size:15px}
.ebcf-pick__tabs{display:inline-flex;background:#fff;border:1px solid var(--f-line);border-radius:999px;padding:3px;gap:2px}
.ebcf-pick__tabs button{appearance:none;border:0;background:transparent;font:inherit;font-size:13px;font-weight:600;color:var(--f-subtle);padding:5px 12px;border-radius:999px;cursor:pointer;transition:background .15s,color .15s}
.ebcf-pick__tabs button:hover{color:var(--f-navy)}
.ebcf-pick__tabs button.is-on{background:var(--f-navy);color:#fff}
.ebcf-pick__tabs button:focus-visible{outline:none;box-shadow:var(--f-ring)}
.ebcf-pick__list{max-height:296px;overflow-y:auto;padding:14px 16px 16px;display:flex;flex-wrap:wrap;gap:8px;overscroll-behavior:contain;scrollbar-width:thin}
.ebcf-pick__group{flex:0 0 100%;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--f-subtle);margin:8px 0 2px;display:flex;align-items:center;gap:10px}
.ebcf-pick__group::after{content:"";flex:1;height:1px;background:var(--f-line)}
.ebcf-pick__group:first-child{margin-top:0}
.ebcf-chip{appearance:none;font:inherit;font-size:14px;line-height:1.2;padding:8px 14px 8px 12px;border-radius:999px;border:1px solid #cbd8ea;background:#fff;color:var(--f-navy);font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;
	transition:background .15s,border-color .15s,color .15s,transform .15s var(--f-ease),box-shadow .15s}
.ebcf-chip::before{content:"";width:8px;height:8px;border-radius:50%;background:#2fb483;box-shadow:0 0 0 3px rgba(47,180,131,.16);flex:0 0 auto}
.ebcf-chip:hover{background:var(--f-ice2);border-color:var(--f-blue);transform:translateY(-1px);box-shadow:0 3px 8px rgba(7,30,163,.08)}
.ebcf-chip:focus-visible{outline:none;box-shadow:var(--f-ring)}
.ebcf-chip mark{background:#fff1b8;color:inherit;border-radius:3px;padding:0 1px}
.ebcf-chip.is-taken{background:#f3f5f8;border-color:#e3e7ee;color:#6b7383;font-weight:500}
.ebcf-chip.is-taken::before{background:#c3c9d3;box-shadow:none}
.ebcf-chip.is-taken small{font-size:11px;font-weight:600;color:#8a92a1;margin-left:-2px}
.ebcf-chip.is-taken:hover{background:#eceff4;border-color:#cfd5de;color:var(--f-muted)}
.ebcf-chip[aria-selected=true]{background:var(--f-navy);border-color:var(--f-navy);color:#fff}
.ebcf-chip[aria-selected=true]::before{background:#fff;box-shadow:none}
.ebcf-chip.is-taken[aria-selected=true]{background:#5b6475;border-color:#5b6475;color:#fff}
.ebcf-chip.is-taken[aria-selected=true] small{color:#e6e9ef}
.ebcf-chip--use{border-style:dashed;border-color:var(--f-blue);background:var(--f-ice2)}
.ebcf-chip--use::before{display:none}
.ebcf-pick__none{flex:0 0 100%;display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;font-size:14px;color:var(--f-muted);padding:2px 0}

.ebcf-status{display:none}
.ebcf-status.is-on{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:14px;border:1px solid var(--f-line);margin-top:6px;animation:ebcf-in .35s var(--f-ease)}
.ebcf-status__icon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto}
.ebcf-status__icon .ebcf-i{width:20px;height:20px;stroke-width:2.4}
.ebcf-status__text{flex:1;min-width:0;font-size:14.5px;line-height:1.5;color:var(--f-muted)}
.ebcf-status__text strong{display:block;font-size:16px;color:var(--f-ink);margin-bottom:2px}
.ebcf-status__text p{margin:6px 0 0}
.ebcf-status__text a{color:var(--f-navy);font-weight:600}
.ebcf-status__change{align-self:flex-start!important;appearance:none;border:1px solid var(--f-field);background:#fff;font:inherit;font-size:13.5px;font-weight:600;color:var(--f-navy);border-radius:999px;padding:6px 14px;cursor:pointer;flex:0 0 auto;align-self:center}
.ebcf-status__change:hover{border-color:var(--f-blue);background:var(--f-ice2)}
.ebcf-status--open{background:var(--f-ok-bg);border-color:var(--f-ok-line)}
.ebcf-status--open .ebcf-status__icon{background:#fff;color:var(--f-ok);box-shadow:0 0 0 1px var(--f-ok-line)}
.ebcf-status--new{background:var(--f-ice2);border-color:#cfe2f7}
.ebcf-status--new .ebcf-status__icon{background:#fff;color:var(--f-blue);box-shadow:0 0 0 1px #cfe2f7}
.ebcf-status--taken{background:var(--f-warn-bg);border-color:var(--f-warn-line)}
.ebcf-status--taken .ebcf-status__icon{background:#fff;color:var(--f-warn);box-shadow:0 0 0 1px var(--f-warn-line)}

/* Friday tiles */
.ebcf-days{display:grid;grid-template-columns:repeat(auto-fill,minmax(98px,1fr));gap:10px}
.ebcf-day{position:relative;display:block;cursor:pointer;margin:0}
.ebcf-day input{position:absolute;opacity:0;inset:0;margin:0;pointer-events:none}
.ebcf-day__box{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:98px;padding:12px 6px 10px;border-radius:14px;
	border:1px solid var(--f-field);background:#fff;color:var(--f-navy);text-align:center;
	transition:border-color .18s,background .18s,color .18s,transform .2s var(--f-ease),box-shadow .2s}
.ebcf-day__dow{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--f-subtle);transition:color .18s}
.ebcf-day__num{font-size:30px;font-weight:800;line-height:1.05;letter-spacing:-.02em}
.ebcf-day__mon{font-size:13.5px;font-weight:600;color:var(--f-muted);transition:color .18s}
.ebcf-day__tag{position:absolute;top:-9px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
	background:var(--f-blue);color:#fff;padding:3px 8px;border-radius:999px;box-shadow:0 2px 6px rgba(0,105,247,.3)}
.ebcf-day__tag--away{background:#7a3fd1;box-shadow:0 2px 6px rgba(122,63,209,.3)}
.ebcf-day:hover .ebcf-day__box{border-color:var(--f-blue);transform:translateY(-2px);box-shadow:0 8px 18px rgba(7,30,163,.09)}
.ebcf-day input:focus-visible+.ebcf-day__box{box-shadow:var(--f-ring);border-color:var(--f-blue)}
.ebcf-day input:checked+.ebcf-day__box{background:linear-gradient(160deg,#0a2bd0,var(--f-navy));border-color:var(--f-navy);color:#fff;transform:translateY(-2px);box-shadow:0 10px 22px rgba(7,30,163,.28)}
.ebcf-day input:checked+.ebcf-day__box .ebcf-day__dow,.ebcf-day input:checked+.ebcf-day__box .ebcf-day__mon{color:rgba(255,255,255,.82)}
.ebcf-day.is-off{cursor:default}
.ebcf-day.is-off .ebcf-day__box{background:repeating-linear-gradient(135deg,#f6f7fa 0 8px,#f1f3f7 8px 16px);border-style:dashed;border-color:#dfe3ea;color:#9aa2b1}
.ebcf-day.is-off .ebcf-day__dow,.ebcf-day.is-off .ebcf-day__mon{color:#a6adba}
.ebcf-day__why{margin-top:3px;font-size:11px;font-weight:700;letter-spacing:.02em;color:#8a92a1;background:#fff;border:1px solid #e3e7ee;border-radius:999px;padding:1px 7px}
.ebcf-day--flex .ebcf-day__box{gap:4px}
.ebcf-day--flex .ebcf-i{width:24px;height:24px;color:var(--f-blue);margin-bottom:2px}
.ebcf-day--flex input:checked+.ebcf-day__box .ebcf-i{color:#fff}
.ebcf-day__flex{font-size:15px;font-weight:800;line-height:1.1}
.ebcf-when{margin:14px 0 0;display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:12px;background:var(--f-ice2);border:1px solid #d6e7fa;font-size:14.5px;line-height:1.5;color:var(--f-muted);animation:ebcf-in .3s var(--f-ease)}
.ebcf-when[hidden]{display:none}
.ebcf-when .ebcf-i{color:var(--f-blue);margin-top:1px}
.ebcf-when strong{color:var(--f-ink)}
.ebcf-when--away{background:#f6f0ff;border-color:#e2d3fb}
.ebcf-when--away .ebcf-i{color:#7a3fd1}

/* Breakfast cards and pills */
.ebcf-opts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ebcf-opt,.ebcf-pill,.ebcf-topic{position:relative;display:block;cursor:pointer;margin:0}
.ebcf-opt input,.ebcf-pill input,.ebcf-topic input{position:absolute;opacity:0;inset:0;margin:0;pointer-events:none}
.ebcf-opt__box{display:flex;align-items:center;gap:11px;min-height:54px;padding:12px 14px;border:1px solid var(--f-field);border-radius:12px;background:#fff;font-size:15px;font-weight:600;color:var(--f-ink);line-height:1.25;
	transition:border-color .18s,background .18s,box-shadow .18s}
.ebcf-opt__dot{width:20px;height:20px;border-radius:50%;border:2px solid #b6c6dc;flex:0 0 auto;display:grid;place-items:center;transition:border-color .18s,background .18s}
.ebcf-opt__dot::after{content:"";width:8px;height:8px;border-radius:50%;background:#fff;transform:scale(0);transition:transform .2s var(--f-ease)}
.ebcf-opt:hover .ebcf-opt__box{border-color:var(--f-blue);background:var(--f-ice2)}
.ebcf-opt input:focus-visible+.ebcf-opt__box{box-shadow:var(--f-ring);border-color:var(--f-blue)}
.ebcf-opt input:checked+.ebcf-opt__box{border-color:var(--f-navy);background:var(--f-ice2);box-shadow:inset 0 0 0 1px var(--f-navy);color:var(--f-navy)}
.ebcf-opt input:checked+.ebcf-opt__box .ebcf-opt__dot{border-color:var(--f-navy);background:var(--f-navy)}
.ebcf-opt input:checked+.ebcf-opt__box .ebcf-opt__dot::after{transform:scale(1)}
.ebcf-opts+.ebcf-grid{margin-top:22px}

.ebcf-pills{display:flex;flex-wrap:wrap;gap:8px}
.ebcf-pill span{display:inline-flex;align-items:center;min-height:42px;padding:9px 17px;border-radius:999px;border:1px solid var(--f-field);background:#fff;font-size:15px;font-weight:600;color:var(--f-navy);transition:border-color .18s,background .18s,color .18s}
.ebcf-pill:hover span{border-color:var(--f-blue);background:var(--f-ice2)}
.ebcf-pill input:focus-visible+span{box-shadow:var(--f-ring)}
.ebcf-pill input:checked+span{background:var(--f-navy);border-color:var(--f-navy);color:#fff}
.ebcf-reveal{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s var(--f-ease),opacity .25s;opacity:0}
.ebcf-reveal>*{overflow:hidden;min-height:0}
.ebcf-reveal.is-open{grid-template-rows:1fr;opacity:1}
.ebcf-reveal.is-open>.ebcf-grid{margin-top:20px;overflow:visible}

/* Contact topics */
.ebcf-topics{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.ebcf-topic__box{display:flex;align-items:center;gap:14px;height:100%;padding:16px 18px;border:1px solid var(--f-field);border-radius:14px;background:#fff;transition:border-color .18s,background .18s,box-shadow .2s,transform .2s var(--f-ease)}
.ebcf-topic__icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--f-ice);color:var(--f-navy);flex:0 0 auto;transition:background .18s,color .18s}
.ebcf-topic__text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.ebcf-topic__title{font-size:16px;font-weight:700;color:var(--f-navy);line-height:1.25}
.ebcf-topic__sub{font-size:13.5px;color:var(--f-subtle)}
.ebcf-topic__tick{width:24px;height:24px;border-radius:50%;border:2px solid #b6c6dc;display:grid;place-items:center;flex:0 0 auto;transition:all .2s}
.ebcf-topic__tick .ebcf-i{width:14px;height:14px;color:#fff;stroke-width:3;opacity:0;transform:scale(.4);transition:all .25s var(--f-ease)}
.ebcf-topic:hover .ebcf-topic__box{border-color:var(--f-blue);transform:translateY(-1px);box-shadow:0 6px 16px rgba(7,30,163,.08)}
.ebcf-topic input:focus-visible+.ebcf-topic__box{box-shadow:var(--f-ring);border-color:var(--f-blue)}
.ebcf-topic input:checked+.ebcf-topic__box{border-color:var(--f-navy);background:var(--f-ice2);box-shadow:inset 0 0 0 1px var(--f-navy)}
.ebcf-topic input:checked+.ebcf-topic__box .ebcf-topic__icon{background:var(--f-navy);color:#fff}
.ebcf-topic input:checked+.ebcf-topic__box .ebcf-topic__tick{background:var(--f-navy);border-color:var(--f-navy)}
.ebcf-topic input:checked+.ebcf-topic__box .ebcf-topic__tick .ebcf-i{opacity:1;transform:none}
.ebcf--contact [data-field=about]{margin-bottom:26px}
.ebcf--contact [data-field=about] .ebcf-label{margin-bottom:3px}

/* Summary and submit */
.ebcf-summary{margin:4px 0 22px;padding:18px 20px;border-radius:16px;background:linear-gradient(135deg,var(--f-ice2),#fff 70%);border:1px solid #d6e7fa;animation:ebcf-in .35s var(--f-ease)}
.ebcf-summary[hidden]{display:none}
.ebcf-summary__title{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--f-blue)}
.ebcf-summary__list{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.ebcf-summary__list li{display:flex;align-items:center;gap:12px;font-size:15px;color:var(--f-ink);font-weight:600}
.ebcf-summary__list li[hidden]{display:none}
.ebcf-summary__list .ebcf-i{color:var(--f-navy);width:19px;height:19px}
.ebcf-summary__list em{font-style:normal;font-weight:600;font-size:12.5px;padding:2px 9px;border-radius:999px;margin-left:2px}
.ebcf-summary__list em.is-open{background:var(--f-ok-bg);color:var(--f-ok)}
.ebcf-summary__list em.is-taken{background:var(--f-warn-bg);color:var(--f-warn)}
.ebcf-summary__list em.is-new{background:var(--f-ice);color:var(--f-navy)}
.ebcf-foot{padding-top:4px}
.ebcf-privacy{margin:0 0 18px;font-size:14.5px;line-height:1.5;color:var(--f-muted)}
.ebcf-privacy a{color:var(--f-navy);font-weight:600}
.ebcf-btn{appearance:none;position:relative;width:100%;min-height:58px;display:flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:12px;cursor:pointer;
	background:linear-gradient(135deg,#0a2bd0 0%,var(--f-navy) 60%);color:#fff;font:inherit;font-size:17px;font-weight:700;letter-spacing:.005em;
	box-shadow:0 10px 24px rgba(7,30,163,.25),inset 0 1px 0 rgba(255,255,255,.14);transition:transform .2s var(--f-ease),box-shadow .2s,filter .2s}
.ebcf-btn .ebcf-i{width:19px;height:19px;transition:transform .25s var(--f-ease)}
.ebcf-btn:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(7,30,163,.3),inset 0 1px 0 rgba(255,255,255,.14);filter:brightness(1.06)}
.ebcf-btn:hover .ebcf-i{transform:translateX(3px)}
.ebcf-btn:active{transform:translateY(0)}
.ebcf-btn:focus-visible{outline:none;box-shadow:0 0 0 4px rgba(0,105,247,.3),0 10px 24px rgba(7,30,163,.25)}
.ebcf-btn__spin{display:none;width:20px;height:20px;border-radius:50%;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;animation:ebcf-spin .8s linear infinite}
.ebcf-btn.is-busy{cursor:progress;filter:saturate(.8)}
.ebcf-btn.is-busy .ebcf-btn__spin{display:block}
.ebcf-btn.is-busy .ebcf-i{display:none}
.ebcf-btn.is-amber{background:linear-gradient(135deg,#1d3ad6 0%,var(--f-navy) 60%)}
.ebcf-formerr{margin:14px 0 0;padding:12px 14px;border-radius:10px;background:var(--f-bad-bg);border:1px solid #f6c9c3;color:var(--f-bad);font-size:14.5px;font-weight:600}
.ebcf-formerr[hidden]{display:none}

/* Sent */
.ebcf-done{text-align:center;padding:24px 8px 12px;animation:ebcf-in .5s var(--f-ease)}
.ebcf-done:focus{outline:none}
.ebcf-done__tick{width:84px;height:84px;margin:0 auto 22px;border-radius:50%;background:var(--f-ok-bg);display:grid;place-items:center;box-shadow:0 0 0 10px rgba(18,128,92,.06)}
.ebcf-done__tick svg{width:56px;height:56px;fill:none;stroke:var(--f-ok);stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}
.ebcf-done__tick circle{stroke-dasharray:151;stroke-dashoffset:151;animation:ebcf-draw .6s .1s var(--f-ease) forwards;stroke-width:2.5;opacity:.5}
.ebcf-done__tick path{stroke-dasharray:36;stroke-dashoffset:36;animation:ebcf-draw .4s .55s var(--f-ease) forwards}
.ebcf-done__title{margin:0 0 12px;font-size:28px;line-height:1.2;font-weight:800;color:var(--f-navy);letter-spacing:-.015em}
.ebcf-done p{margin:0 auto 22px;max-width:520px;font-size:16px;line-height:1.55;color:var(--f-muted)}
.ebcf-done__steps{list-style:none;margin:0 auto 26px;padding:20px 22px;max-width:520px;text-align:left;display:grid;gap:14px;border-radius:16px;background:var(--f-paper);border:1px solid var(--f-line)}
.ebcf-done__steps li{display:flex;align-items:center;gap:14px;font-size:15px;font-weight:600;color:var(--f-ink);line-height:1.4}
.ebcf-done__dot{width:30px;height:30px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;background:#fff;border:1px solid var(--f-line);color:var(--f-navy);font-size:13px;font-weight:800}
.ebcf-done__steps li.is-done .ebcf-done__dot{background:var(--f-ok);border-color:var(--f-ok);color:#fff}
.ebcf-done__dot .ebcf-i{width:15px;height:15px;stroke-width:3}
.ebcf-done__link{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--f-navy);text-decoration:none;padding:10px 18px;border-radius:999px;background:var(--f-ice);transition:background .18s,gap .2s}
.ebcf-done__link:hover{background:#dcf1ff;gap:11px}
.ebcf-done__link .ebcf-i{width:17px;height:17px}

/* Before the script runs, and without it */
.ebcf:not(.is-js) .ebcf-reveal{grid-template-rows:1fr;opacity:1}
.ebcf:not(.is-js) .ebcf-reveal>.ebcf-grid{margin-top:20px}

@keyframes ebcf-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes ebcf-spin{to{transform:rotate(360deg)}}
@keyframes ebcf-draw{to{stroke-dashoffset:0}}
@keyframes ebcf-shake{10%,90%{transform:translateX(-1px)}20%,80%{transform:translateX(2px)}30%,50%,70%{transform:translateX(-3px)}40%,60%{transform:translateX(3px)}}
.ebcf-field.is-shake{animation:ebcf-shake .45s}

@media (max-width:767px){
	.ebcf-grid{grid-template-columns:1fr;gap:18px}
	.ebcf-opts{grid-template-columns:repeat(2,minmax(0,1fr))}
	.ebcf-topics{grid-template-columns:minmax(0,1fr)}
	.ebcf-days{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
	.ebcf-status.is-on{flex-wrap:wrap;padding:14px}
	.ebcf-status__text{flex:1 1 calc(100% - 56px)}
	.ebcf-status__change{margin-left:52px}
	.ebcf-day__tag{font-size:9.5px;padding:2px 6px}
	.ebcf-day__flex{font-size:13.5px}
	.ebcf-day__box{min-height:86px;padding:11px 4px 9px}
	.ebcf-day__num{font-size:26px}
	.ebcf-step__title{font-size:18px}
	.ebcf-pick__head{flex-wrap:wrap}
	.ebcf-pick__list{max-height:250px}
	.ebcf-done__title{font-size:24px}
}
@media (max-width:380px){
	.ebcf-days{grid-template-columns:repeat(3,minmax(0,1fr))}
	.ebcf-opts{grid-template-columns:minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){
	.ebcf *,.ebcf *::before,.ebcf *::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
	.ebcf-done__tick circle,.ebcf-done__tick path{stroke-dashoffset:0}
}
.ebcf-search__clear[hidden]{display:none}
.ebcf-status__use{margin-top:2px}
.ebcf-status__use::before{background:#2fb483}
.ebcf-chip>span{display:inline}
.ebcf-grid+.ebcf-foot{margin-top:26px}

/* Breakfast: a Full English card with its variations, then cards with icons and diet marks */
.ebcf-bfs{display:grid;gap:12px}
.ebcf-bf__icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--f-ice);color:var(--f-navy);flex:0 0 auto;transition:background .18s,color .18s}
.ebcf-bf__icon .ebcf-i{width:24px;height:24px;stroke-width:1.7}
.ebcf-bf__text{display:flex;flex-direction:column;gap:2px;min-width:0}
.ebcf-bf__title{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:15.5px;font-weight:700;color:var(--f-ink);line-height:1.25}
.ebcf-bf__sub{font-size:13px;color:var(--f-subtle);line-height:1.35}
.ebcf-diet{display:inline-grid;place-items:center;min-width:24px;height:19px;padding:0 5px;border-radius:999px;font-size:10.5px;font-weight:800;letter-spacing:.03em;text-decoration:none;cursor:help;border:1px solid transparent}
.ebcf-diet--v{background:#e9f7ee;color:#11703f;border-color:#bfe6cd}
.ebcf-diet--vg{background:#11703f;color:#fff}
.ebcf-diet--gf{background:#fff3dc;color:#8a5300;border-color:#f4d79b}
.ebcf-bf-full{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px 18px;padding:14px 16px;border:1px solid var(--f-field);border-radius:14px;background:#fff;transition:border-color .18s,background .18s,box-shadow .18s}
.ebcf-bf-full__head{display:flex;align-items:center;gap:14px;min-width:0}
.ebcf-bf-full__mods{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.ebcf-bf-full__ask{font-size:13px;font-weight:600;color:var(--f-subtle);margin-right:4px}
.ebcf-mod{position:relative;display:inline-block;cursor:pointer;margin:0}
.ebcf-mod input{position:absolute;opacity:0;inset:0;margin:0;pointer-events:none}
.ebcf-mod span{display:inline-flex;align-items:center;min-height:36px;padding:7px 14px;border-radius:999px;border:1px solid var(--f-field);background:#fff;font-size:14px;font-weight:600;color:var(--f-navy);transition:border-color .18s,background .18s,color .18s}
.ebcf-mod:hover span{border-color:var(--f-blue);background:var(--f-ice2)}
.ebcf-mod input:focus-visible+span{box-shadow:var(--f-ring)}
.ebcf-mod input:checked+span{background:var(--f-navy);border-color:var(--f-navy);color:#fff}
.ebcf-bf-full:has(input:checked){border-color:var(--f-navy);background:var(--f-ice2);box-shadow:inset 0 0 0 1px var(--f-navy)}
.ebcf-bf-full:has(input:checked) .ebcf-bf__icon,.ebcf-bf input:checked+.ebcf-bf__box .ebcf-bf__icon{background:var(--f-navy);color:#fff}
.ebcf-bf-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ebcf-bf{position:relative;display:block;cursor:pointer;margin:0}
.ebcf-bf input{position:absolute;opacity:0;inset:0;margin:0;pointer-events:none}
.ebcf-bf__box{display:flex;align-items:center;gap:12px;height:100%;min-height:72px;padding:12px 14px;border:1px solid var(--f-field);border-radius:14px;background:#fff;transition:border-color .18s,background .18s,box-shadow .18s,transform .2s var(--f-ease)}
.ebcf-bf:hover .ebcf-bf__box{border-color:var(--f-blue);background:var(--f-ice2);transform:translateY(-1px)}
.ebcf-bf input:focus-visible+.ebcf-bf__box{box-shadow:var(--f-ring);border-color:var(--f-blue)}
.ebcf-bf input:checked+.ebcf-bf__box{border-color:var(--f-navy);background:var(--f-ice2);box-shadow:inset 0 0 0 1px var(--f-navy)}
.ebcf-bf-key{display:flex;flex-wrap:wrap;gap:6px 16px;margin:2px 0 0;font-size:12.5px;color:var(--f-subtle)}
.ebcf-bf-key span{display:inline-flex;align-items:center;gap:6px}
.ebcf-bf-key .ebcf-diet{cursor:default}
.ebcf-bfs+.ebcf-grid{margin-top:22px}
@media (max-width:767px){
	.ebcf-bf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.ebcf-bf__box{flex-direction:column;align-items:flex-start;gap:9px;min-height:0;padding:13px}
	.ebcf-bf__icon{width:38px;height:38px}
	.ebcf-bf__title{font-size:15px}
	.ebcf-bf-full__mods{width:100%}
	.ebcf-bf-full__ask{width:100%;margin:0 0 2px}
}
.ebcf .ebcf-diet{text-decoration:none;border-bottom-width:1px}
@media (max-width:767px){
	.ebcf-bf-full__mods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
	.ebcf-bf-full__ask{grid-column:1/-1}
	.ebcf-mod span{width:100%;justify-content:center;padding:7px 6px;font-size:13.5px;white-space:nowrap}
}

/* Food allergies: a No / Yes everyone answers; Yes opens what and a tick */
.ebcf-alg{margin-top:26px;padding:18px 18px 20px;border-radius:16px;background:var(--f-paper);border:1px solid var(--f-line)}
.ebcf-alg .ebcf-help{display:flex;align-items:flex-start;gap:7px}
.ebcf-alg [data-field=allergy]>.ebcf-help .ebcf-i{width:16px;height:16px;flex:0 0 auto;margin-top:1px;color:var(--f-blue)}
.ebcf-pill--yes input:checked+span{background:#a3221b;border-color:#a3221b}
.ebcf-check{position:relative;display:flex;align-items:flex-start;gap:12px;cursor:pointer;margin:0;padding:14px 16px;border:1px solid var(--f-field);border-radius:12px;background:#fff;font-size:14.5px;line-height:1.45;color:var(--f-muted);transition:border-color .18s,background .18s}
.ebcf .ebcf-check input{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;padding:0;opacity:0;cursor:pointer;border:0;box-shadow:none}
.ebcf-check__box{flex:0 0 auto;width:22px;height:22px;margin-top:1px;border-radius:6px;border:1.5px solid #9fb2cc;background:#fff;display:grid;place-items:center;color:#fff;transition:background .18s,border-color .18s,box-shadow .18s}
.ebcf-check__box .ebcf-i{width:15px;height:15px;stroke-width:3;opacity:0;transform:scale(.5);transition:opacity .18s,transform .25s var(--f-ease)}
.ebcf-check input:checked~.ebcf-check__box{background:var(--f-navy);border-color:var(--f-navy)}
.ebcf-check input:checked~.ebcf-check__box .ebcf-i{opacity:1;transform:none}
.ebcf-check input:focus-visible~.ebcf-check__box{box-shadow:var(--f-ring)}
.ebcf-check:hover{border-color:var(--f-blue)}
.ebcf-check:has(input:checked){border-color:var(--f-navy);background:var(--f-ice2);color:var(--f-ink)}
.ebcf-field.has-error .ebcf-check{border-color:var(--f-bad);background:var(--f-bad-bg)}
@media (max-width:767px){.ebcf-alg{padding:16px 14px 18px;margin-left:-4px;margin-right:-4px}}
