* { box-sizing: border-box; }
html { color-scheme: light; background: #fff; }
body { margin: 0; color: #153f53; background: #fff; }
.article-letter { width: min(var(--article-width,680px),calc(100% - 48px)); margin: 0 auto; padding: 78px 0 56px; font-family: var(--article-font,"EB Garamond",Georgia,serif); font-size: var(--article-size,19px); line-height: var(--article-line,1.7); overflow-wrap: break-word; }
.article-title { font-size: var(--article-title,46px); line-height: 1.15; letter-spacing: -.015em; font-weight: 600; margin: 0 0 36px; }
.article-copy > * { margin: 0; }
.article-copy > * + * { margin-top: var(--article-gap,24px); }
.article-copy h1,.article-copy h2,.article-copy h3,.article-copy h4 { line-height: 1.25; font-weight: 600; margin-top: calc(var(--article-gap,24px)*1.7); }
.article-copy h1 { font-size: 2em; }.article-copy h2 { font-size: 1.55em; }.article-copy h3 { font-size: 1.25em; }
.article-copy a { color: inherit; text-underline-offset: 3px; }
.article-copy strong { font-weight: 600; }
.article-copy blockquote { border-left: 3px solid #c5e1ea; padding-left: 22px; }
.article-copy ul,.article-copy ol { padding-left: 1.5em; }.article-copy li+li { margin-top: 8px; }
.article-copy img { max-width: 100%; height: auto; display: block; border-radius: 12px; }
.article-copy figcaption { color: #627b88; font-size: .85em; margin-top: 8px; }
.article-copy code { font-size: .9em; background: #f1f6f8; border-radius: 3px; padding: 2px 4px; }
.article-booking { margin-top: 32px; }
.article-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 58px; padding: 15px 25px; border: 1px solid #153f53; border-radius: 99px; background: #153f53; color: #fff; font: 19px/1.4 "EB Garamond",Georgia,serif; text-decoration: none; }
.article-button:hover { background: #225874; }.article-button:focus-visible { outline: 3px solid #e8c94e; outline-offset: 4px; }
.article-button span { font-size: 23px; flex: 0 0 auto; }
@media(max-width:600px) { .article-letter { width: calc(100% - 40px); padding: 42px 0 36px; font-size: var(--article-mobile-size,18px); }.article-title { font-size: min(var(--article-title,46px),40px); }.article-button { width: 100%; gap: 15px; padding-inline: 21px; } }
