/* The patch is the control; country names and language live inside its popup. */
.cwk-booking [data-locale-picker]{--body:CwkBookingDM,Arial,sans-serif}
.cwk-checkout [data-locale-picker]{--body:CwkCheckoutDM,Arial,sans-serif}
#coaching-portal-app [data-locale-picker]{--body:PortalDM,Arial,sans-serif}
[data-locale-picker],#top [data-locale-picker]{position:relative;flex:none;min-width:0;margin:0}
[data-locale-picker]>summary,#top [data-locale-picker]>summary{display:flex;align-items:center;justify-content:center;width:120px;height:138px;min-height:138px;padding:0;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;list-style:none;cursor:pointer;color:#3d4348}
[data-locale-picker]>summary:hover,[data-locale-picker][open]>summary,#top [data-locale-picker]>summary:hover,#top [data-locale-picker][open]>summary{background:transparent;border:0;box-shadow:none}
[data-locale-picker]>summary::marker{content:''}
[data-locale-picker]>summary::-webkit-details-marker{display:none}
[data-locale-picker] .locale-woven-mark,#top [data-locale-picker] .locale-woven-mark{display:flex;align-items:center;justify-content:center;width:120px;height:138px}
[data-locale-picker] .locale-woven-mark img,#top [data-locale-picker] .locale-woven-mark img{display:block;width:100%;height:100%;max-width:none;object-fit:contain;object-position:center;transform:none;filter:none}
[data-locale-picker] .locale-woven-mark img[hidden],#top [data-locale-picker] .locale-woven-mark img[hidden]{display:none}
[data-locale-picker] .locale-panel,#top [data-locale-picker] .locale-panel{position:absolute;z-index:80;top:calc(100% + 8px);right:0;left:auto;box-sizing:border-box;width:414px;max-width:calc(100vw - 38px);margin:0;padding:20px;border:1px solid #d9dfe2;border-top:3px solid #12abf8;border-radius:7px;background:#fff;box-shadow:0 4px 0 #d9dfe2,0 16px 36px #3d434824;color:#3d4348;font-family:var(--body,var(--book-body,'DM Sans',sans-serif))}
[data-locale-picker]:not([open])>.locale-panel,#top [data-locale-picker]:not([open])>.locale-panel{display:none}
[data-locale-picker] .locale-choice-group,#top [data-locale-picker] .locale-choice-group{min-width:0;margin:0;padding:0;border:0}
[data-locale-picker] legend,#top [data-locale-picker] legend{display:block;width:100%;margin:0 0 10px;padding:0;font:600 14px/1.4 var(--body,var(--book-body,'DM Sans',sans-serif));letter-spacing:0}
[data-locale-picker] .locale-region-grid,#top [data-locale-picker] .locale-region-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
[data-locale-picker] .locale-region-button,#top [data-locale-picker] .locale-region-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:130px;padding:8px 4px;border:1px solid transparent;border-radius:5px;background:transparent;box-shadow:none;color:inherit;text-align:center;cursor:pointer}
[data-locale-picker] .locale-region-button img,#top [data-locale-picker] .locale-region-button img{display:block;width:76px;height:86px;max-width:100%;object-fit:contain;object-position:center;border:0;border-radius:0;box-shadow:none}
[data-locale-picker] .locale-country-label,#top [data-locale-picker] .locale-country-label{display:block;max-width:100%;font:600 14px/1.4 var(--body,var(--book-body,'DM Sans',sans-serif));overflow-wrap:normal}
[data-locale-picker] .locale-region-button:hover,#top [data-locale-picker] .locale-region-button:hover{background:#f5f6f7;border-color:#12abf8}
[data-locale-picker] .locale-region-button[aria-pressed=true],#top [data-locale-picker] .locale-region-button[aria-pressed=true]{background:#f5f6f7;border-color:#12abf8;box-shadow:none;color:#3d4348}
[data-locale-picker] .locale-language-group,#top [data-locale-picker] .locale-language-group{margin-top:16px;padding-top:15px;border-top:1px solid #d9dfe2}
[data-locale-picker] .locale-language-grid,#top [data-locale-picker] .locale-language-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
[data-locale-picker] .locale-language-button,#top [data-locale-picker] .locale-language-button{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;min-height:54px;margin:0;padding:9px 12px;border:1px solid #d9dfe2;border-radius:4px;background:#fff;box-shadow:none;color:#3d4348;font:600 16px/1.4 var(--body,var(--book-body,'DM Sans',sans-serif));text-align:left;cursor:pointer}
[data-locale-picker] .locale-language-button[aria-pressed=true],#top [data-locale-picker] .locale-language-button[aria-pressed=true]{border-color:#12abf8;background:#f5f6f7;box-shadow:none}
[data-locale-picker] .locale-language-note{display:block;margin-top:3px;color:#526066;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
[data-locale-picker] summary:focus-visible,[data-locale-picker] button:focus-visible{outline:3px solid #3d4348;outline-offset:3px}
/* Three times the previous 28 × 32 compact flag. */
@media(max-width:1000px){[data-locale-picker]>summary,#top [data-locale-picker]>summary,[data-locale-picker] .locale-woven-mark,#top [data-locale-picker] .locale-woven-mark{width:84px;height:96px;min-height:96px}#top .header-side{align-items:center}}
/* Keep the country patch in the same tablet row as the account controls. */
@media(min-width:768px) and (max-width:1279px){#top [data-locale-picker]>summary,#top [data-locale-picker] .locale-woven-mark{width:68px;height:78px;min-height:78px;padding:0}#top [data-locale-picker] .locale-panel{left:auto;right:0}}
@media(max-width:767px){#top [data-locale-picker] .locale-panel{left:0;right:auto}}
@media(max-width:520px){[data-locale-picker] .locale-panel,#top [data-locale-picker] .locale-panel{padding:14px}[data-locale-picker] .locale-region-button,#top [data-locale-picker] .locale-region-button{min-height:117px}[data-locale-picker] .locale-region-button img,#top [data-locale-picker] .locale-region-button img{width:66px;height:77px}.cwk-booking .book-nav{grid-template-columns:minmax(0,1fr) max-content}.cwk-booking .book-nav [data-locale-picker]{grid-column:2;grid-row:1/3}}

/* The home popup belongs to the same ink, cobalt and paper palette. */
.thinking-home #top [data-locale-picker]>summary{color:var(--brand-ink)}
.thinking-home #top [data-locale-picker] .locale-panel{border-color:var(--brand-line);border-top-color:var(--brand-blue);background:var(--brand-paper);box-shadow:0 14px 32px #3d43481f;color:var(--brand-ink)}
.thinking-home #top [data-locale-picker] .locale-region-button:hover,.thinking-home #top [data-locale-picker] .locale-region-button[aria-pressed=true]{background:var(--brand-wash);border-color:var(--brand-blue);color:var(--brand-ink)}
.thinking-home #top [data-locale-picker] .locale-language-group{border-color:var(--brand-line)}
.thinking-home #top [data-locale-picker] .locale-language-button{border-color:var(--brand-line);color:var(--brand-ink)}
.thinking-home #top [data-locale-picker] .locale-language-button[aria-pressed=true]{background:#f5f6f7;border-color:var(--brand-blue);color:var(--brand-ink)}

.thinking-home #top [data-locale-picker] .locale-language-note{color:var(--brand-muted)}
.thinking-home #top [data-locale-picker] .locale-language-button:not([aria-pressed=true]):hover{background:var(--brand-wash);border-color:var(--brand-blue);color:var(--brand-ink)}
.thinking-home #top [data-locale-picker] summary:focus-visible,.thinking-home #top [data-locale-picker] button:focus-visible{outline-color:var(--brand-ink)}

/* Selection labels stay readable on the sole brand-blue fill. */
.thinking-home #top [data-locale-picker] .locale-language-button[aria-pressed=true] .locale-language-note{color:var(--brand-ink)}

@media(max-width:350px){[data-locale-picker] .locale-language-grid,#top [data-locale-picker] .locale-language-grid{grid-template-columns:minmax(0,1fr)}}

/* Keep the larger labels readable instead of compressing a narrow chooser. */
[data-locale-picker] .locale-panel,#top [data-locale-picker] .locale-panel{max-height:min(70dvh,600px);overflow-y:auto;overscroll-behavior:contain}
@media(max-width:300px){[data-locale-picker] .locale-region-grid,#top [data-locale-picker] .locale-region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Both sections share a type scale, including the visible choice labels. */
[data-locale-picker] :is([data-locale-country-heading],[data-locale-language-heading],.locale-country-label,.locale-language-button),
#top [data-locale-picker] :is([data-locale-country-heading],[data-locale-language-heading],.locale-country-label,.locale-language-button){font-size:16px;line-height:1.4;font-weight:600;letter-spacing:0}
