@font-face{font-family:Montserrat;src:url('/montserrat-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Montserrat;src:url('/montserrat-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
:root{font-family:Montserrat,sans-serif;color:#0a267a;background:#fff;font-synthesis:none}
*{box-sizing:border-box}
body{margin:0;min-width:280px}
.page{min-height:100svh;display:flex;flex-direction:column;align-items:flex-start;padding:clamp(24px,5vw,72px);max-width:1600px;margin-inline:auto}
.brand{display:inline-flex;flex-direction:column;align-items:flex-start}
.logo{display:block;width:clamp(210px,23vw,300px);height:auto}
.brand-affiliation{font-size:clamp(9px,.98vw,13px);line-height:1.3;margin-top:5px;letter-spacing:-.025em}
main{width:100%;max-width:1000px;margin-block:auto;padding:clamp(64px,9vh,112px) 0 64px}
h1{font-size:clamp(38px,5.4vw,76px);line-height:1.12;letter-spacing:-.045em;margin:0 0 30px;font-weight:700;max-width:920px;text-wrap:balance}
.intro{font-size:clamp(18px,1.9vw,26px);line-height:1.55;max-width:790px;color:#536887;margin:0 0 36px}
a{color:inherit;text-underline-offset:5px;overflow-wrap:anywhere}
a:focus-visible{outline:3px solid #0a267a;outline-offset:6px}
.booking{display:inline-flex;align-items:center;justify-content:space-between;gap:44px;min-height:64px;padding:20px 30px;background:#227cc2;color:#fff;border-radius:6px;text-decoration:none;font-size:17px;font-weight:700;transition:background .15s}
.booking:hover{background:#0a267a}
.booking span[aria-hidden]{font-size:28px;line-height:1}
.contact{display:flex;flex-direction:column;align-items:flex-start;gap:22px;padding:0 0 8px;max-width:100%;background:#fff}
.contact a{display:flex;align-items:center;gap:18px;font-size:clamp(15px,1.4vw,19px);line-height:1.6;max-width:100%}
.contact svg{width:23px;height:23px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact span{min-width:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:600px){main{padding:76px 0 56px}h1{font-size:clamp(34px,9.4vw,48px);margin-bottom:26px;text-wrap:initial}.intro{margin-bottom:32px}.booking{width:100%;max-width:350px;font-size:16px;padding:19px 24px}.contact{gap:18px}.contact a{gap:14px}.contact svg{width:21px;height:21px}}
