.public-website{margin:0;background:#fff;color:#062134;font:15px/20px Arial,Helvetica,sans-serif;--pw-brand:#0c3c60}
.public-website *{box-sizing:border-box}.public-website .pw-container{max-width:980px;margin:auto;background:#fff;min-height:100vh}
.public-website .pw-header{padding:16px}.public-website .pw-desktop{display:flex;align-items:center;gap:16px;margin-top:20px;border-block:1px solid #ccc;padding:8px 4px 4px;min-height:54px}
.public-website .pw-desktop>a{flex:1;text-align:center}.public-website .pw-header a,.public-website .pw-more summary{font:18px/40px Georgia,'Times New Roman',serif;color:#767676;text-decoration:none;white-space:nowrap}
.public-website .pw-header a:hover,.public-website .pw-header a[aria-current=page]{color:var(--pw-brand)}.public-website :focus-visible{outline:3px solid var(--pw-brand);outline-offset:3px}
.public-website .pw-more{position:relative}.public-website summary{cursor:pointer}.public-website .pw-more>div{position:absolute;right:0;top:100%;z-index:30;min-width:224px;background:white;box-shadow:0 6px 18px #0003;border-radius:6px;padding:8px}.public-website .pw-more a{display:block;text-align:center}
.public-website .pw-content{padding:16px 32px}.public-website .pw-content h1{font-size:30px;line-height:36px;font-weight:600;margin:40px 0}.public-website .pw-content h2{font-size:24px;line-height:32px;font-weight:500;margin:24px 0}.public-website .pw-content h3{font-size:20px;line-height:28px;margin:20px 0}
.public-website .pw-content p,.public-website .pw-content li{font:15px/20px Arial,Helvetica,sans-serif;margin:0 0 5px;color:#062134}.public-website .pw-content ul,.public-website .pw-content ol{padding-left:24px;margin:0 0 16px}.public-website ul ul{list-style:circle}.public-website ul ul ul{list-style:square}
.public-website a{color:var(--pw-brand);overflow-wrap:anywhere}.public-website .pw-content p+ p,.public-website .pw-home ul+p{margin-top:24px}.public-website .pw-home p:has(+ul){font-weight:700;margin-top:24px}
.public-website .pw-logo{display:block;width:auto;max-width:100%;height:auto;margin:0 auto 20px}.public-website .pw-section{margin-bottom:24px}.public-website .pw-section img{max-width:100%;height:auto}.public-website .pw-policy>p{margin-bottom:20px}.public-website .pw-location_list article{margin:40px 0;padding:0 0 24px;border-bottom:1px solid #ddd;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:24px 32px;align-items:start}.public-website .pw-location_list article h2{margin:0 0 16px}
.public-website .pw-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px}.public-website .pw-footer{padding:8px 16px;color:#1468a8;font-size:14px}.public-website .pw-footer p{margin:0 0 8px}.public-website .pw-utility{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;padding:8px 0}.public-website .pw-preview{padding:12px 24px;background:#fff3cd;font:14px/20px Arial,sans-serif}
.public-website .pw-button,.public-website button{display:inline-block;padding:10px 16px;background:var(--pw-brand);color:white;border:0;border-radius:4px;cursor:pointer}.public-website .pw-error{padding:16px;background:#ffe1e1;color:#821313}.public-website [aria-disabled=true]{color:#555;text-decoration:none}.public-website .pw-review{padding:24px}.public-website .pw-review label{display:inline-block;padding:8px 0}
.public-website .pw-mobile{display:none}.public-website .pw-neutral{display:flex;gap:24px;flex-wrap:wrap;border-block:1px solid #ccc;padding:8px}.public-website .pw-visually-hidden{position:absolute;width:1px;height:1px;padding:0!important;margin:-1px!important;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.pw-application-shell{margin:0;background:#fff}.pw-application-shell .pw-shell-chrome{max-width:980px;margin:auto}.pw-application-shell #app{position:relative;max-width:1200px;margin:auto}.pw-application-shell #app .booking-page{position:relative;margin:0;min-height:65vh}.pw-application-shell #app .blank-layout,.pw-application-shell #app .v-application__wrap{min-height:65vh}.pw-application-shell #app .auth-wrapper{min-height:65vh!important}
@media(max-width:767px){.public-website .pw-desktop{display:none}.public-website .pw-mobile{display:block;text-align:right}.public-website .pw-mobile>summary{display:inline-block;background:var(--pw-brand);color:white;padding:10px;font:16px/20px Arial,sans-serif}.public-website .pw-mobile nav{display:flex;flex-direction:column;text-align:left;padding:8px}.public-website .pw-content{padding:16px}.public-website .pw-content h1{font-size:28px}.public-website .pw-neutral{gap:8px 16px}.public-website .pw-neutral a{font-size:16px}.pw-application-shell #app .booking-page{padding:12px}}

@media(max-width:767px){.pw-application-shell #app .booking-page .language-selector{position:relative;top:auto;right:auto;display:flex;justify-content:flex-end;margin-bottom:8px}}
.public-website .pw-home .pw-section>[aria-disabled=true]{display:block;text-align:center;font-size:24px;line-height:32px;padding:24px 0}.public-website .pw-content ul ul{margin-bottom:0}.public-website .pw-logo{margin-bottom:0}

.public-website .pw-contact-form{max-width:500px;margin:24px auto;font-family:Arial,sans-serif}.public-website .pw-contact-form label{display:block;margin:16px 0 8px}.public-website .pw-contact-form input,.public-website .pw-contact-form textarea{box-sizing:border-box;width:100%;background:#daedff;border:2px solid #222;padding:8px;font:inherit}.public-website .pw-contact-form button{margin-top:16px;padding:10px 20px;background:var(--pw-brand);color:white;border:0;cursor:pointer}.public-website .pw-contact-form button:disabled{opacity:.6}.public-website .pw-contact-form [data-error]{display:block;color:#a40000}.public-website .pw-contact-form [role=status]{line-height:1.5}.public-website .pw-contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.public-website .pw-contact-form [hidden]{display:none}

/* Match the booking application's primary accent (#696CFF). */
.public-website{--pw-form-accent:#696CFF}
.public-website :is(.registration-preview,.pw-contact-form) :is(input,select,textarea,button):focus{outline:2px solid var(--pw-form-accent);outline-offset:2px}
.public-website :is(.registration-preview,.pw-contact-form) :is(input:not([type=checkbox]):not([type=range]),select,textarea):focus{border-color:var(--pw-form-accent)}
.public-website :is(.registration-preview,.pw-contact-form) :is(input[type=checkbox],input[type=range]){accent-color:var(--pw-form-accent)}

/* Two logical office columns; rich-text nodes never participate in the outer grid. */
.public-website .pw-location-info{grid-column:1;grid-row:1;min-width:0;overflow-wrap:anywhere}.public-website .pw-location-map{grid-column:2;grid-row:1;min-width:0}.public-website .pw-location-map>.pw-map{display:block;width:100%;height:290px;border:0}
@media(max-width:820px){.public-website .pw-location_list article{grid-template-columns:minmax(0,1fr)}.public-website .pw-location-info,.public-website .pw-location-map{grid-column:1;grid-row:auto}.public-website .pw-location-map>.pw-map{height:280px}}

/* Shared session language control, above the public navigation on all pages. */
.public-website .pw-language-bar{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:8px 0;font:14px Arial,sans-serif}
.public-website .pw-language-bar select{font:inherit;padding:6px 28px 6px 10px;border:1px solid #ccc;border-radius:5px;background:#fff;color:#373b4d}
.public-website .pw-language-bar select:focus-visible{outline:2px solid #696cff;outline-offset:2px}

/* Structured rich-text sizes: values are validated, never arbitrary CSS. */
.pw-font-14{font-size:14px;line-height:1.4}
.pw-font-16{font-size:16px;line-height:1.4}
.pw-font-18{font-size:18px;line-height:1.4}
.pw-font-20{font-size:20px;line-height:1.4}
.pw-font-24{font-size:24px;line-height:1.4}
