/* Additions only; palette and typography are inherited from the unmodified R2 stylesheet. */
[hidden]{display:none!important}.r4-lang-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;min-width:52px;background:var(--white);border:1px solid var(--line);border-radius:14px;color:var(--ink);font-size:12px;font-weight:600;padding:8px}.r4-footer-lang{color:var(--white)!important;background:none;border:0}.r4-language-dialog{max-width:460px}.r4-language-options{display:grid;gap:10px;margin:18px 0}.r4-language-option{display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:14px;border:1px solid var(--line);border-radius:14px;font-size:16px}.r4-language-option[aria-current=true]{border:2px solid var(--primary);padding:13px;background:var(--pale)}.r4-language-option span{font-size:12px;color:var(--muted)}.r4-language-suggestion{max-width:1200px;margin:12px auto;padding:10px 16px;background:var(--pale);border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;justify-content:center;gap:16px;font-size:12px}.r4-language-suggestion button{border:0;background:none;min-width:40px;min-height:40px}.r4-language-suggestion a{font-weight:600;color:var(--primary)}
.r4-wide{max-width:1280px!important}.r4-booking-card{min-width:0}.r4-route-options{margin-top:25px}.r4-route-options .choice{padding:22px;display:flex;gap:15px;align-items:center;min-height:128px}.r4-choice-symbol{display:grid;place-items:center;flex-shrink:0;background:var(--pale);color:var(--primary);width:45px;height:45px;border-radius:14px;font-size:26px}.r4-pro-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:25px 0}.r4-pro-card{border:1px solid var(--line);border-radius:22px;padding:18px;background:var(--white);min-width:0}.r4-pro-card figure{margin:0}.r4-pro-card img{display:block;aspect-ratio:4/5;width:100%;max-height:260px;object-fit:cover;border-radius:15px}.r4-pro-card h2{font-size:23px;margin:16px 0 7px}.r4-pro-card p{font-size:13px}.r4-pro-card .btn{margin-top:17px;width:100%}.r4-pro-card figcaption{font-size:11px;color:var(--muted);margin:8px 0}.r4-pro-card[aria-pressed=true]{border:2px solid var(--primary);padding:17px;background:var(--pale)}.compact.r4-pro-grid{grid-template-columns:1fr;gap:12px}.compact .r4-pro-card{display:flex;align-items:center;gap:14px;text-align:left;min-height:110px;width:100%}.compact .r4-pro-card img{width:68px;height:85px;max-height:none;flex-shrink:0}.compact .r4-pro-card h3{font-size:18px;letter-spacing:inherit;margin-bottom:5px}.compact .r4-pro-card p{margin:0;font-size:12px}.compact .r4-pro-card .tag{margin-top:5px;font-size:10px}
.r4-calendar-title{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-bottom:26px}.r4-calendar-title h1{margin-top:10px}.r4-calendar-title>.tag{flex-shrink:0;margin-top:16px}.r4-calendar-layout{display:grid;grid-template-columns:minmax(180px,.72fr) minmax(275px,1.12fr) minmax(240px,1fr);gap:25px;align-items:start;margin-top:26px}.r4-professional{background:var(--pale);border:1px solid var(--line);border-radius:22px;padding:19px;min-width:0}.r4-professional figure{margin:0 0 15px}.r4-professional img{display:block;width:100%;max-width:180px;aspect-ratio:4/5;object-fit:cover;object-position:50% 35%;border-radius:15px;margin:auto}.r4-professional figcaption{font-size:10px;text-align:center;line-height:1.45;margin:8px 0;color:var(--muted)}.r4-professional h2{font-size:23px;margin-bottom:5px}.r4-mini-meta{display:grid;gap:6px;margin:14px 0;font-size:12px;color:var(--muted)}.r4-first-note{margin-top:12px;font-size:11px;padding:13px}.r4-professional .text-link{font-size:12px;background:none;border:0;padding:0}.r4-calendar{min-width:0;border:1px solid var(--line);background:var(--white);padding:17px;border-radius:22px}.r4-calendar .calendar-head{margin-bottom:18px}.r4-calendar .weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:7px;gap:3px}.r4-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.r4-days button{border:1px solid transparent;border-radius:12px;min-height:40px;padding:0;background:var(--white);font-size:14px}.r4-days button:not(:disabled){background:var(--pale);color:var(--primary)}.r4-days button[aria-pressed=true]{background:var(--primary);color:white}.r4-days button:disabled{background:transparent;color:var(--muted);opacity:.6}.r4-calendar-note{margin-top:16px;line-height:1.7;font-size:11px}.r4-time-panel{min-width:0}.r4-time-panel h2{font-size:23px;margin-bottom:7px}.r4-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0 10px}.r4-slot{background:var(--white);border:1px solid var(--line);border-radius:12px;min-height:49px;font-size:13px;padding:9px 5px;white-space:nowrap}.r4-slot[aria-pressed=true]{background:var(--primary);color:var(--white);border-color:var(--primary)}.r4-status{margin:16px 0;font-size:13px;color:var(--primary);line-height:1.65;min-height:22px}.r4-error{color:var(--danger)!important;font-size:12px!important;margin:8px 0;display:block}.r4-summary-professional{display:flex;gap:18px;align-items:center;margin:22px 0;background:var(--pale);border-radius:18px;padding:15px}.r4-summary-professional img{width:84px;height:105px;object-fit:cover;border-radius:12px}.r4-summary-professional h2{font-size:22px;margin:0 0 7px}.r4-summary-professional p{font-size:13px;margin:5px 0}.r4-summary-professional+.list-row{flex-wrap:wrap}.r4-portrait-preview{margin:0}.r4-portrait-preview img{width:100%;max-width:320px;aspect-ratio:4/5;object-fit:cover;object-position:50% 35%;display:block;border-radius:18px;margin:auto}.r4-portrait-preview figcaption{font-size:12px;text-align:center;margin-top:10px;color:var(--muted)}
.r4-route-card{border:1px solid var(--line);background:var(--white);padding:22px;border-radius:20px}.r4-route-card h3{margin-bottom:13px}.r4-route-card p{font-size:13px;line-height:1.7;margin-bottom:17px}.r4-review-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin:28px 0}.r4-review-shortcuts a{font-size:13px;color:var(--primary);display:block;min-height:44px}
@media(min-width:641px) and (max-width:1080px){.r4-calendar-layout{grid-template-columns:1fr 1fr}.r4-professional{grid-column:1/-1;display:grid;grid-template-columns:120px 1fr;column-gap:20px}.r4-professional figure{grid-row:1/6;margin:0}.r4-professional img{width:100px;max-height:125px}.r4-first-note{grid-column:2}.r4-calendar-title{display:block}}
@media(max-width:640px){.r4-calendar-layout{grid-template-columns:1fr;gap:20px;margin-top:20px}.r4-professional{display:grid;grid-template-columns:88px minmax(0,1fr);column-gap:14px;padding:15px;border-radius:18px}.r4-professional figure{grid-row:1/5;margin:0}.r4-professional img{width:88px;height:110px;max-width:none}.r4-professional figcaption{font-size:9px;line-height:1.4;text-align:left}.r4-professional h2{font-size:22px;margin:0}.r4-professional .small{font-size:11px}.r4-mini-meta{margin:5px 0;font-size:11px}.r4-first-note{grid-column:1/-1;margin-top:12px}.r4-professional .text-link{min-height:40px}.r4-calendar-title{display:block;margin-bottom:18px}.r4-calendar-title>.tag{margin-top:12px}.r4-calendar .icon-btn{min-width:40px;height:40px}.r4-days button{min-height:39px}.r4-slot{min-height:50px;font-size:14px}.r4-time-panel h2{font-size:23px}.r4-pro-grid{grid-template-columns:1fr;gap:15px}.r4-pro-card{display:grid;grid-template-columns:95px minmax(0,1fr);gap:13px;padding:16px}.r4-pro-card figure{grid-row:1/4}.r4-pro-card img{width:95px;height:119px}.r4-pro-card h2{font-size:21px;margin:4px 0}.r4-pro-card .btn{margin-top:6px;font-size:12px}.r4-pro-card figcaption{font-size:9px}.r4-pro-card .r4-pro-meta{grid-column:2}.r4-route-options .choice{padding:18px;min-height:115px}.r4-lang-button{font-size:11px;min-width:45px;min-height:42px}.header-actions{gap:7px}.r4-language-suggestion{margin:8px 12px;gap:8px;font-size:11px}.r4-review-shortcuts{grid-template-columns:1fr}.r4-summary-professional{gap:12px}.r4-summary-professional h2{font-size:21px}.r4-summary-professional .small{font-size:11px}.r4-booking-card .stepper{flex-wrap:wrap;row-gap:7px;font-size:8px}.r4-calendar-layout .notice{font-size:11px}.r4-wide{padding:0 12px!important}}
@media(max-width:360px){.r4-calendar{padding:12px}.r4-days{gap:2px}.r4-days button{min-height:34px;font-size:13px}.r4-professional{grid-template-columns:74px minmax(0,1fr);column-gap:11px}.r4-professional img{width:74px;height:93px}.r4-pro-card{grid-template-columns:80px minmax(0,1fr);padding:13px}.r4-pro-card img{width:80px;height:100px}.r4-route-options .choice{gap:10px}.r4-choice-symbol{width:34px;height:34px}}
/* Fixed portrait aspect ratio overrides HTML height, not brand styling. */
.r4-professional img{height:auto}.r4-pro-card img{height:auto;max-width:208px;margin:auto}.compact .r4-pro-card img{width:68px;height:85px}.r4-professional .r4-first-note{display:none}
@media(min-width:1081px){.r4-professional figure img{max-width:144px}.r4-professional{padding:17px}.r4-calendar-title h1{font-size:38px}.r4-calendar-layout{grid-template-columns:minmax(178px,.70fr) minmax(275px,1.12fr) minmax(240px,1fr)}}
@media(max-width:640px){.r4-professional img{width:88px;height:110px}.r4-pro-card img{width:95px;height:119px}.r4-professional figure{grid-row:1/5}.r4-professional .text-link{align-self:start}.r4-booking-card .stepper{font-size:8px}.r4-calendar-title h1{font-size:29px}.r4-professional figcaption{font-size:9px}}
@media(max-width:360px){.r4-professional img{width:74px;height:93px}.r4-pro-card img{width:80px;height:100px}}
.team-grid:has(>[data-pro-picker]){display:block}
