.eu-booking{--eu-ink:#0b3448;--eu-blue:#07536a;--eu-cyan:#13a9d4;--eu-pale:#eff8fc;--eu-line:#dbeaf0;--eu-orange:#ff6b2c;max-width:1200px;margin:0 auto;padding:clamp(52px,7vw,96px) clamp(18px,4vw,40px);color:var(--eu-ink);font:16px/1.65 Arial,sans-serif;scroll-margin-top:110px}
.eu-booking,.eu-booking *{box-sizing:border-box}.eu-booking [hidden]{display:none!important}.eu-booking .eu-kicker{font-size:12px;font-weight:750;letter-spacing:.17em;color:#08677f;margin:0 0 12px;padding:0}
.eu-booking h2{font:800 clamp(30px,4.2vw,52px)/1.08 'Arial Narrow',Arial,sans-serif;letter-spacing:-.035em;margin:0 0 18px;padding:0;color:var(--eu-ink)}.eu-booking .eu-book-intro>p:last-child{max-width:700px;color:#536b7a;margin:0 0 36px;padding:0}
.eu-booking .eu-book-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;align-items:start}.eu-booking .eu-book-left{display:grid;gap:20px}
.eu-booking .eu-book-card,.eu-booking .eu-book-contact{background:white;border:1px solid var(--eu-line);border-radius:16px;padding:clamp(20px,3vw,30px);box-shadow:0 6px 24px #10384d05}.eu-booking .eu-book-contact{background:var(--eu-pale);position:sticky;top:110px}
.eu-booking .eu-book-card>header,.eu-booking .eu-book-contact>header{display:flex;gap:14px;align-items:flex-start;margin-bottom:24px}.eu-booking .eu-step{display:grid;place-items:center;background:#e5f4fa;color:#07536a;border-radius:10px;font-size:13px;min-width:38px;height:38px;font-weight:750}
.eu-booking h3{font:750 22px/1.2 'Arial Narrow',Arial,sans-serif;margin:0 0 8px;padding:0;color:var(--eu-ink)}.eu-booking header p{color:#536b7a;font-size:14px;line-height:1.6;margin:0;padding:0}
.eu-booking label:not(.eu-date-card):not(.eu-consent){display:block;font-size:14px;font-weight:700;color:#163e52;margin:18px 0 8px}.eu-booking input:not([type=radio]):not([type=checkbox]),.eu-booking select,.eu-booking textarea{display:block;width:100%;max-width:100%;min-width:0;border:1px solid #b4cbd6;border-radius:10px;background:#fff;color:#153b50;min-height:50px;padding:12px 14px;font:16px/1.5 Arial,sans-serif;box-shadow:none;margin:0}
.eu-booking textarea{resize:vertical;min-height:112px}.eu-booking input:focus,.eu-booking select:focus,.eu-booking textarea:focus{outline:3px solid #13a9d433;outline-offset:1px;border-color:#08677f}.eu-booking .eu-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.eu-booking .eu-location{display:flex;gap:12px;background:var(--eu-pale);padding:16px;border-radius:10px;margin-top:18px}.eu-booking .eu-location>span{font-size:24px;color:#08677f}.eu-booking .eu-location p{font-size:14px;margin:0;line-height:1.6;padding:0}.eu-booking .eu-price{font-size:20px;font-weight:750;color:#07536a;margin:16px 0 0;padding:0}
.eu-booking .eu-date-fieldset{border:0;margin:0;padding:0;min-width:0}.eu-booking .eu-date-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.eu-booking .eu-date-card{position:relative;display:flex;align-items:flex-start;gap:10px;border:1px solid var(--eu-line);border-radius:12px;padding:16px;cursor:pointer;background:#fff;margin:0;font-weight:400;min-width:0}
.eu-booking .eu-date-card>input{margin:4px 0 0;flex-shrink:0;accent-color:#07536a}.eu-booking .eu-date-card strong{display:block;font-size:17px;line-height:1.3;margin-bottom:8px;color:#0b3448}.eu-booking .eu-date-card small{display:block;font-size:13px;line-height:1.6;color:#506c7c}.eu-booking .eu-date-card:has(input:checked){border:2px solid #07536a;background:#eff8fc;padding:15px}.eu-booking .eu-date-card:focus-within{outline:3px solid #13a9d455;outline-offset:3px}
.eu-booking .eu-inline-note{grid-column:1/-1;color:#536b7a;font-size:14px;margin:0;padding:0}.eu-booking .eu-more{grid-column:1/-1;background:transparent;border:0;padding:12px 2px;color:#07536a;min-height:44px;font:700 14px/1.5 Arial,sans-serif;text-decoration:underline;text-underline-offset:4px;cursor:pointer;text-align:left}
.eu-booking .eu-consent{display:flex;align-items:flex-start;gap:12px;margin:22px 0;font-size:13px;font-weight:400;line-height:1.65;color:#435e6e}.eu-booking .eu-consent input{margin-top:5px;flex-shrink:0;accent-color:#07536a;width:17px;height:17px}.eu-booking .eu-optional{font-weight:400;color:#607786;font-size:12px}
.eu-booking .eu-submit{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;min-height:54px;border:0;border-radius:10px;background:var(--eu-orange);color:#0b3448;font:750 17px/1.4 Arial,sans-serif;padding:16px 20px;cursor:pointer}.eu-booking .eu-submit:hover{background:#ff7b43}.eu-booking .eu-submit:disabled{opacity:.65;cursor:wait}.eu-booking .eu-submit:focus-visible,.eu-booking .eu-more:focus-visible{outline:3px solid #07536a;outline-offset:4px}
.eu-booking .eu-form-note{font-size:12px;line-height:1.7;color:#536b7a;margin:16px 0 0;padding:0}.eu-booking .eu-feedback{padding:18px;border:1px solid #8db7a4;background:#f2faf5;border-radius:10px;color:#214b38;margin-top:18px;line-height:1.6;font-size:14px}.eu-booking .eu-feedback-error{color:#7b301a;background:#fff5f0;border-color:#e9b59f}
.eu-booking .eu-trap,.eu-booking .eu-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
@media(max-width:820px){.eu-booking .eu-book-grid{grid-template-columns:1fr}.eu-booking .eu-book-contact{position:static}.eu-booking .eu-date-options{grid-template-columns:1fr 1fr}}
@media(max-width:450px){.eu-booking .eu-two,.eu-booking .eu-date-options{grid-template-columns:1fr}.eu-booking .eu-book-card,.eu-booking .eu-book-contact{padding:20px}.eu-booking .eu-submit{font-size:16px}}
@media(prefers-reduced-motion:reduce){.eu-booking *{scroll-behavior:auto!important;transition:none!important}}
