/* Blue Coast Digital — theme "bluecoast" (design A "Signal"). Light by default; [data-theme=dark] on <html> for dark. */
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/space-grotesk-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/space-grotesk-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/ibm-plex-sans-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/ibm-plex-sans-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/ibm-plex-sans-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/jetbrains-mono-latin-500-normal.woff2) format('woff2')}

:root{--bc-bg:#FFFFFF;--bc-bg2:#F3F6FA;--bc-card:#FFFFFF;--bc-line:#DDE3EC;--bc-text:#1B2433;--bc-head:#0A1222;--bc-muted:#4D596B;
  --bc-brand:#015DA6;--bc-brand-ink:#FFFFFF;--bc-brand-h:#014A85;--bc-eye:#C2410C;--bc-link:#015DA6;--bc-chip:#EEF4FB;--bc-bad:#B42318;--bc-good:#067647;
  --bc-dark:#0A1222;--bc-dark-ink:#FFFFFF;--bc-h:'Space Grotesk',system-ui,sans-serif;--bc-b:'IBM Plex Sans',system-ui,sans-serif;
  --brand:var(--bc-brand);--card:var(--bc-card);--text:var(--bc-text);--head:var(--bc-head);--muted:var(--bc-muted);color-scheme:light}
:root[data-theme="dark"]{--bc-bg:#0A0F1C;--bc-bg2:#0E1424;--bc-card:#121A2B;--bc-line:#223049;--bc-text:#E8EDF7;--bc-head:#F4F7FC;--bc-muted:#A3AFC4;
  --bc-brand:#2BA8E0;--bc-brand-ink:#06111F;--bc-brand-h:#5CC0EC;--bc-eye:#F59A5C;--bc-link:#6CC4F0;--bc-chip:#16223A;--bc-bad:#F97066;--bc-good:#47CD89;--bc-dark:#121A2B;color-scheme:dark}

html{background:var(--bc-bg)}
body{background:var(--bc-bg)!important;color:var(--bc-text)!important;font:400 17px/1.6 var(--bc-b)!important;-webkit-font-smoothing:antialiased}
body a{color:var(--bc-link)}
h1,h2,h3,h4{font-family:var(--bc-h);color:var(--bc-head)}
.ic{display:inline-block;vertical-align:middle;flex:none}
.bc-skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--bc-brand);color:var(--bc-brand-ink);padding:8px 14px;border-radius:8px}.bc-skip:focus{left:8px}
.bc-wrap{max-width:1200px;margin:0 auto;padding:0 24px;box-sizing:border-box}
.bc-narrow{max-width:820px}
.bc-center{text-align:center}
.bc-muted{color:var(--bc-muted)}
.bc-small{font-size:14px}
.bc-mt8{margin-top:8px}.bc-mt16{margin-top:16px}.bc-mt24{margin-top:24px}
.bc-eye{font:600 13px var(--bc-b);letter-spacing:.1em;text-transform:uppercase;color:var(--bc-eye)}
.bc-kicker{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--bc-muted)}
.bc-h1{font:700 clamp(34px,4.6vw,54px)/1.08 var(--bc-h);margin:14px 0 0;color:var(--bc-head);letter-spacing:-.02em}
.bc-h2{font:700 clamp(26px,3vw,36px)/1.15 var(--bc-h);color:var(--bc-head);margin:10px 0 0;letter-spacing:-.01em}
.bc-h3{font:700 19px/1.3 var(--bc-h);color:var(--bc-head);margin:0}
.bc-lead{font-size:19px;color:var(--bc-muted);margin:18px 0 0;max-width:620px}
.bc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:10px;font:600 15px var(--bc-b);text-decoration:none!important;box-sizing:border-box;border:1px solid transparent;cursor:pointer;transition:background .15s,border-color .15s}
.bc-btn-p{background:var(--bc-brand);color:var(--bc-brand-ink)!important}.bc-btn-p:hover{background:var(--bc-brand-h)}
.bc-btn-o{border-color:var(--bc-line);color:var(--bc-head)!important;background:transparent}.bc-btn-o:hover{border-color:var(--bc-brand)}
.bc-btn-ghost{border-color:rgba(255,255,255,.35);color:#fff!important}.bc-btn-ghost:hover{border-color:#fff}
.bc-card{background:var(--bc-card);border:1px solid var(--bc-line);border-radius:16px;padding:24px;box-sizing:border-box}
.bc-card p{margin:8px 0 0}
.bc-card-link{display:block;text-decoration:none!important;color:var(--bc-text)!important;transition:border-color .15s,transform .15s}.bc-card-link:hover{border-color:var(--bc-brand);transform:translateY(-2px)}
.bc-alt{background:var(--bc-bg2);border-top:1px solid var(--bc-line);border-bottom:1px solid var(--bc-line)}
.bc-sec{padding:72px 0}.bc-sec-sm{padding:40px 0}
.bc-tag,.bc-chip{display:inline-block;font:500 12px var(--bc-b);color:var(--bc-muted);background:var(--bc-chip);border-radius:999px;padding:4px 10px;margin:0}
.bc-grid2,.bc-grid3,.bc-grid4,.bc-two{display:grid;gap:18px}
.bc-grid2,.bc-two{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}.bc-two{gap:28px;margin-top:28px}
.bc-grid3{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.bc-grid4{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}

/* header */
.bc-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bc-bg) 92%,transparent);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--bc-line)}
.bc-hrow{display:flex;align-items:center;gap:18px;padding-top:12px;padding-bottom:12px}
.bc-logo{display:flex;align-items:center;margin-right:auto}.bc-logo img{height:46px;width:auto;display:block}
.bc-logo-d{display:none!important}:root[data-theme="dark"] .bc-logo-l{display:none!important}:root[data-theme="dark"] .bc-logo-d{display:block!important}
.bc-nav{display:flex;align-items:center;gap:4px;font-weight:500;font-size:15px}
.bc-nav>a,.bc-dd-b{color:var(--bc-head)!important;text-decoration:none;padding:10px 10px;border-radius:8px;background:none;border:0;font:500 15px var(--bc-b);cursor:pointer;display:inline-flex;align-items:center;gap:4px}
.bc-nav>a:hover,.bc-dd-b:hover{background:var(--bc-chip)}
.bc-dd{position:relative}
.bc-dd-p{display:none;position:absolute;top:100%;left:0;min-width:270px;background:var(--bc-card);border:1px solid var(--bc-line);border-radius:14px;padding:8px;box-shadow:0 18px 40px rgba(10,18,34,.14);z-index:60}
.bc-dd-p a{display:block;padding:9px 12px;border-radius:8px;color:var(--bc-head)!important;text-decoration:none;font-size:15px}.bc-dd-p a:hover{background:var(--bc-chip)}
.bc-dd-all{color:var(--bc-link)!important;font-weight:600}
.bc-dd.open .bc-dd-p{display:block}
@media (hover:hover) and (min-width:1101px){.bc-dd:hover .bc-dd-p,.bc-dd:focus-within .bc-dd-p{display:block}}
.bc-hact{display:flex;gap:10px;align-items:center}
.bc-tgl{width:44px;height:44px;border-radius:10px;border:1px solid var(--bc-line);background:transparent;color:var(--bc-head);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.bc-i-sun{display:none}:root[data-theme="dark"] .bc-i-sun{display:inline}:root[data-theme="dark"] .bc-i-moon{display:none}
.bc-burger{display:none;width:44px;height:44px;border-radius:10px;border:1px solid var(--bc-line);background:transparent;color:var(--bc-head);align-items:center;justify-content:center;cursor:pointer;order:3}
@media (max-width:1100px){
  .bc-burger{display:inline-flex}
  .bc-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--bc-bg);border-bottom:1px solid var(--bc-line);flex-direction:column;align-items:stretch;padding:8px 16px 16px;max-height:calc(100vh - 70px);overflow:auto}
  .bc-nav.open{display:flex}
  .bc-nav>a,.bc-dd-b{width:100%;justify-content:space-between;padding:12px 8px}
  .bc-dd-p{position:static;box-shadow:none;border:0;padding:0 0 0 10px;min-width:0}
  .bc-hcta{display:none}
  .bc-hrow{position:relative}
}

/* hero */
.bc-hero{padding:56px 0 64px}.bc-hero-sm{padding:36px 0 48px}
.bc-hero-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:44px;align-items:start}
.bc-pains{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-direction:column;gap:12px;font-size:16px}
.bc-pains li{display:flex;gap:12px;align-items:flex-start}.bc-pains li>.ic{color:var(--bc-bad);margin-top:2px}.bc-pains strong{color:var(--bc-head)}
.bc-claims,.bc-ticks{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-direction:column;gap:8px}
.bc-claims li,.bc-ticks li{display:flex;gap:10px;align-items:flex-start}.bc-claims .ic,.bc-ticks .ic{color:var(--bc-good);margin-top:3px}
.bc-crumbs{font-size:14px;color:var(--bc-muted)}.bc-crumbs a{color:var(--bc-muted)}

/* form */
.bc-form{display:flex;flex-direction:column;gap:12px;padding:26px;scroll-margin-top:90px}
.bc-form p{margin:0}
.bc-field{display:flex;flex-direction:column;gap:5px;font-size:14px;color:var(--bc-muted)}
.bc-field input,.bc-field select,.bc-field textarea{min-height:46px;border-radius:10px;border:1px solid var(--bc-line);background:var(--bc-bg);color:var(--bc-text);padding:10px 14px;font:400 16px var(--bc-b);box-sizing:border-box;width:100%}
.bc-field input:focus,.bc-field select:focus,.bc-field textarea:focus{outline:2px solid var(--bc-brand);outline-offset:1px;border-color:var(--bc-brand)}
.bc-check{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--bc-muted)}.bc-check input{width:18px;height:18px}
.bc-more summary{cursor:pointer;font-size:14px;color:var(--bc-link)}
.bc-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.bc-err{background:color-mix(in srgb,var(--bc-bad) 10%,var(--bc-card));border:1px solid var(--bc-bad);color:var(--bc-text);border-radius:10px;padding:10px 12px;font-size:14px}

/* sections */
.bc-stats{padding:36px 0}
.bc-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;text-align:center}
.bc-stat-n{font:700 32px var(--bc-h);color:var(--bc-head)}
.bc-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 12px;margin-top:16px}
.bc-pill{display:inline-flex;align-items:center;padding:8px 14px;border:1px solid var(--bc-line);border-radius:999px;font-size:14px;text-decoration:none;color:var(--bc-head)!important}.bc-pill:hover{border-color:var(--bc-brand)}
.bc-answer{border-left:4px solid var(--bc-brand);background:var(--bc-bg2);border-radius:0 14px 14px 0;padding:18px 22px;max-width:880px}
.bc-answer p{margin:6px 0 0;font-size:18px}
.bc-svc-list{margin-top:14px}
.bc-svc{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--bc-line);text-decoration:none!important;color:var(--bc-head)!important;font-weight:500}.bc-svc:hover{color:var(--bc-link)!important}
.bc-leak{display:flex;gap:14px}.bc-leak>.ic{color:var(--bc-good);margin-top:2px}.bc-leak p{margin:6px 0 0}
.bc-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:18px}
.bc-steps li{border-top:3px solid var(--bc-brand);padding-top:14px}.bc-steps p{margin:6px 0 0}
.bc-step-n{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--bc-chip);color:var(--bc-brand);font:700 14px var(--bc-h);margin-right:8px;flex:none}
.bc-steps .bc-step-n{margin-bottom:8px}
.bc-flow,.bc-chips{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.bc-flow li{display:flex;align-items:center}
.bc-chips{flex-direction:row;flex-wrap:wrap}.bc-chips li{display:flex;align-items:center;border:1px solid var(--bc-line);border-radius:999px;padding:6px 14px 6px 6px;background:var(--bc-card)}
.bc-offer{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.bc-offer .bc-btn{margin-top:auto}
.bc-metrics{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px}.bc-metrics div{display:flex;flex-direction:column}.bc-metrics b{font:700 24px var(--bc-h);color:var(--bc-brand)}.bc-metrics span{font-size:13px;color:var(--bc-muted)}
.bc-faq{border-bottom:1px solid var(--bc-line);padding:4px 0}
.bc-faq summary{cursor:pointer;list-style:none;padding:14px 32px 14px 0;font:600 17px var(--bc-b);color:var(--bc-head);position:relative}
.bc-faq summary::-webkit-details-marker{display:none}.bc-faq summary::after{content:"+";position:absolute;right:4px;top:10px;font-size:22px;color:var(--bc-brand)}.bc-faq[open] summary::after{content:"–"}
.bc-faq p{margin:0 0 14px;color:var(--bc-muted)}
.bc-cta{background:var(--bc-dark);padding:56px 0}
.bc-cta-row{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.bc-on-dark{color:#fff!important;margin:0}.bc-on-dark-muted{color:rgba(255,255,255,.75);margin:8px 0 0}
.bc-cta-btns{display:flex;gap:12px;flex-wrap:wrap}
:root[data-theme="dark"] .bc-cta{background:linear-gradient(135deg,#0E2A4A,#121A2B)}
.bc-contact-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;margin-top:24px}
.bc-contact-list .bc-card{display:flex;gap:12px;align-items:flex-start;padding:16px}.bc-contact-list .ic{color:var(--bc-brand);margin-top:2px}
.bc-map iframe{width:100%;height:360px;border:0;border-radius:16px;filter:saturate(.9)}
:root[data-theme="dark"] .bc-map iframe{filter:invert(.9) hue-rotate(180deg)}

/* footer */
.bc-footer{border-top:1px solid var(--bc-line);background:var(--bc-bg2);padding:48px 0 0;margin-top:0}
.bc-fgrid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:28px}
@media (max-width:980px){.bc-fgrid{grid-template-columns:repeat(2,1fr)}.bc-fbrand{grid-column:1/-1}}
@media (max-width:520px){.bc-fgrid{grid-template-columns:1fr}}
.bc-fcol{display:flex;flex-direction:column;gap:8px;font-size:15px}
.bc-fcol a{color:var(--bc-text);text-decoration:none}.bc-fcol a:hover{color:var(--bc-link);text-decoration:underline}
.bc-fh{font:700 15px var(--bc-h);color:var(--bc-head);margin-bottom:4px}
.bc-fbrand img{height:44px;width:auto}
.bc-soc{display:flex;gap:12px;flex-wrap:wrap}
.bc-fbot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--bc-line);margin-top:32px;padding-top:18px;padding-bottom:22px;font-size:14px;color:var(--bc-muted)}
.bc-fbot a{color:var(--bc-muted)}
.bc-credit{opacity:.8;font-size:13px}
.bc-mab{display:none}
body .bc-mab{position:fixed;left:0;right:0;bottom:0;z-index:55;display:none;grid-template-columns:1fr 1.3fr 1fr;background:var(--bc-card);border-top:1px solid var(--bc-line);box-shadow:0 -6px 20px rgba(10,18,34,.12);padding:6px 8px calc(6px + env(safe-area-inset-bottom));gap:6px}
body .bc-mab a{display:flex;align-items:center;justify-content:center;gap:6px;min-height:46px;border-radius:10px;font:600 14px var(--bc-b);text-decoration:none;color:var(--bc-head)}
body .bc-mab .mab-chat{background:var(--bc-brand);color:var(--bc-brand-ink)}body .bc-mab .mab-wa{color:#128C4A}
@media (max-width:760px){body .bc-mab{display:grid}.bc-footer{padding-bottom:64px}.bc-sec{padding:52px 0}.bc-hero{padding:32px 0 44px}.bc-wrap{padding:0 16px}}

/* core pages (blog, booking, account, pay, legal) inside the theme */
body .container{max-width:1200px}
:root[data-theme="dark"] body .card,:root[data-theme="dark"] body .box,:root[data-theme="dark"] body .pg-card,:root[data-theme="dark"] body .bk-card{background:var(--bc-card);color:var(--bc-text);border-color:var(--bc-line)}
:root[data-theme="dark"] body input,:root[data-theme="dark"] body select,:root[data-theme="dark"] body textarea{background:var(--bc-bg2);color:var(--bc-text);border-color:var(--bc-line)}
:root[data-theme="dark"] body .muted,:root[data-theme="dark"] body p{color:inherit}
body .btn-primary{background:var(--bc-brand);border-color:var(--bc-brand);color:var(--bc-brand-ink)}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
/* cookie choice bar */
.bc-consent{position:fixed;left:16px;bottom:16px;z-index:70;max-width:420px;background:var(--bc-card);color:var(--bc-text);border:1px solid var(--bc-line);border-radius:14px;box-shadow:0 12px 32px rgba(10,18,34,.18);padding:14px 16px;font:400 14px/1.5 var(--bc-b)}
.bc-consent[hidden]{display:none}.bc-consent p{margin:0 0 10px}.bc-consent a{color:var(--bc-brand)}
.bc-consent div{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media (max-width:760px){.bc-consent{left:10px;right:10px;bottom:72px;max-width:none}}
