
/* ── BUTTONS ── */
.b{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:60px;font-weight:700;font-size:.88rem;transition:all .25s;line-height:1.4;cursor:pointer;font-family:'Montserrat',sans-serif;border:none;text-decoration:none}
.bp{background:#d6f4f2;color:#0e7a74}
.bp:hover{background:#0a5f5a;color:#fff;transform:translateY(-2px)}
.bp-solid{background:#0e7a74;color:#fff}
.bp-solid:hover{background:#0a5f5a;transform:translateY(-2px)}

/* ── ANNOUNCEMENT BAR ── */
.gj-ann{background:#d6f4f2;color:#0e7a74;text-align:center;padding:10px 16px;font-size:.72rem;font-weight:600;letter-spacing:.01em;line-height:1.4;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:6px;width:100%;box-sizing:border-box}
.gj-ann-row{display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}
.gj-ann-sep{color:rgba(14,122,116,.4);font-weight:300;padding:0 6px}
.gj-ann-btn{display:inline-flex;align-items:center;padding:4px 12px;background:#0e7a74;color:#fff;border-radius:60px;text-decoration:none;font-weight:700;font-size:.72rem;white-space:nowrap}
@media(max-width:600px){.gj-ann{flex-direction:column;gap:7px;align-items:center;padding:10px 12px}.gj-ann-sep{display:none}.gj-ann-row{width:100%;justify-content:center}}

/* ── STICKY HEADER ── */
.gj-header{position:sticky;top:0;z-index:999;width:100%}

/* ── NAV ── */
.gj-n{background:rgba(255,255,255,.97);border-bottom:1px solid rgba(0,100,90,.08);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 1px 12px rgba(14,122,116,.05);transition:box-shadow .3s}
.gj-n.s{box-shadow:0 4px 24px rgba(14,122,116,.12)}
.gj-nb{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 24px;height:80px}
@media(min-width:640px){.gj-nb{padding:0 40px}}
.gj-logo-img{height:72px;width:auto;object-fit:contain;display:block}
@media(max-width:767px){.gj-logo-img{height:56px}}
.gj-nl{display:flex;align-items:center;gap:28px}
@media(max-width:767px){.gj-nl{display:none}}
.gj-nl a{font-size:.85rem;font-weight:600;color:#4a5e5d;transition:color .2s;font-family:'Montserrat',sans-serif;text-decoration:none}
.gj-nl a:hover,.gj-nl a.active{color:#0e7a74}
.gj-nc{display:flex;align-items:center;gap:10px}
@media(max-width:767px){.gj-nc{display:none}}
.gj-hm{display:none;width:40px;height:40px;border-radius:50%;background:#d6f4f2;align-items:center;justify-content:center;border:none;cursor:pointer;flex-shrink:0}
@media(max-width:767px){.gj-hm{display:flex}}

/* ── MOBILE MENU ── */
.gj-mm{display:none;position:fixed;inset:0;z-index:1000;background:#fff;flex-direction:column;align-items:center;justify-content:center;gap:32px;padding:40px 24px}
.gj-mm.op{display:flex}
.gj-mm a{font-size:1.3rem;font-weight:700;color:#1a2e2d;font-family:'Plus Jakarta Sans',system-ui,sans-serif;text-decoration:none}
.gj-mx{position:absolute;top:24px;right:24px;width:40px;height:40px;border-radius:50%;background:#d6f4f2;display:flex;align-items:center;justify-content:center;font-size:1.4rem;border:none;cursor:pointer;color:#0e7a74}

/* ── FOOTER ── */
.gj-footer{background:#d6f4f2;color:#0e7a74;padding:56px 0 32px}
.gj-footer-grid{display:grid;gap:40px;margin-bottom:40px}
@media(min-width:768px){.gj-footer-grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:48px}}
.gj-footer-tagline{font-size:.85rem;color:#4a5e5d;line-height:1.7;max-width:300px;margin-bottom:20px;margin-top:12px}
.gj-footer-socials{display:flex;gap:10px;flex-wrap:wrap}
.gj-footer-social{width:36px;height:36px;border-radius:50%;background:rgba(14,122,116,.12);display:flex;align-items:center;justify-content:center;transition:background .2s;flex-shrink:0;text-decoration:none}
.gj-footer-social:hover{background:rgba(14,122,116,.2)}
.gj-footer-social svg{width:15px;height:15px;fill:#0e7a74}
.gj-footer-col h4{font-size:.65rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#8a9e9c;margin-bottom:14px;font-family:'Montserrat',sans-serif}
.gj-footer-col a,.gj-footer-col p{display:block;font-size:.83rem;color:#4a5e5d;margin-bottom:8px;transition:color .2s;line-height:1.5;text-decoration:none}
.gj-footer-col a:hover{color:#0e7a74}
.gj-footer-bottom{padding-top:24px;border-top:1px solid rgba(14,122,116,.15);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center}
.gj-footer-bottom p,.gj-footer-bottom a{font-size:.72rem;color:#4a5e5d;text-decoration:none}
.gj-footer-bottom a:hover{color:#0e7a74}

/* ── FAB ── */
.gwj-fab-wrap{position:fixed;bottom:24px;right:24px;z-index:900;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.gwj-fab-bubble{display:flex;align-items:center;gap:10px;background:#fff;border-radius:60px;padding:10px 16px 10px 12px;box-shadow:0 4px 20px rgba(0,0,0,.14);cursor:pointer;white-space:nowrap;transform:translateX(20px);opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease;text-decoration:none;color:#1a2e2d;font-family:'Montserrat',sans-serif;font-size:.82rem;font-weight:500;border:1px solid rgba(14,122,116,.1);position:absolute;right:0}
.gwj-fab-bubble span.gwj-fab-dot{width:32px;height:32px;border-radius:50%;background:#d6f4f2;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.75rem}
.gwj-fab-wrap.open .gwj-fab-bubble{opacity:1;pointer-events:auto;transform:translateX(0)}
.gwj-fab-wrap.open .gwj-fab-bubble:nth-child(1){transition-delay:.05s}
.gwj-fab-bubble:nth-child(1){bottom:190px}
.gwj-fab-bubble:nth-child(2){bottom:128px}
.gwj-fab-bubble:nth-child(3){bottom:66px}
.gwj-fab-wrap.open .gwj-fab-bubble:nth-child(2){transition-delay:.1s}
.gwj-fab-wrap.open .gwj-fab-bubble:nth-child(3){transition-delay:.15s}
.gwj-fab-btn{width:56px;height:56px;border-radius:50%;background:#d6f4f2;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(14,122,116,.25);cursor:pointer;border:none;transition:transform .2s,box-shadow .2s,background .2s;flex-shrink:0}
.gwj-fab-btn:hover{transform:scale(1.06);box-shadow:0 8px 28px rgba(14,122,116,.45)}
.gwj-fab-btn svg{width:28px;height:28px;fill:#0e7a74}
.gwj-fab-wrap.open .gwj-fab-btn{background:#b8ecea}
.gwj-fab-overlay{display:none;position:fixed;inset:0;z-index:899}

/* ── MODAL ── */
.gwj-modal-overlay{display:none;pointer-events:none;position:fixed;inset:0;z-index:2000;background:rgba(13,74,70,.6);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);align-items:center;justify-content:center;padding:20px}
.gwj-modal-overlay.open{display:flex;pointer-events:auto}
.gwj-modal{background:#fff;border-radius:24px;width:100%;max-width:480px;box-shadow:0 24px 80px rgba(0,0,0,.2);overflow:hidden;max-height:90vh;display:flex;flex-direction:column;animation:gwjModalIn .3s cubic-bezier(.34,1.56,.64,1)}
.gwj-modal-body{overflow-y:auto;flex:1 1 auto;padding:24px 28px 28px}
@keyframes gwjModalIn{from{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
.gwj-modal-head{background:#d6f4f2;padding:24px 28px 20px;position:relative;border-radius:24px 24px 0 0}
.gwj-modal-head h3{font-size:1.15rem;font-weight:800;color:#0e7a74;letter-spacing:-.02em;margin-bottom:4px;padding-right:32px;font-family:'Plus Jakarta Sans',sans-serif}
.gwj-modal-head p{font-size:.82rem;color:#4a5e5d;line-height:1.5}
.gwj-modal-close{position:absolute;top:16px;right:16px;width:32px;height:32px;border-radius:50%;background:rgba(14,122,116,.12);display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:#0e7a74;cursor:pointer;border:none}
.gwj-modal-close:hover{background:rgba(14,122,116,.2)}
.gwj-modal-submit{width:100%;padding:14px;border-radius:60px;background:#0e7a74;color:#fff;font-weight:700;font-size:.9rem;border:none;cursor:pointer;font-family:'Montserrat',sans-serif;margin-top:4px;transition:background .2s}
.gwj-modal-submit:hover{background:#0a5f5a}
.gwj-modal-submit:disabled{opacity:.6;cursor:not-allowed}
.gwj-modal-note{font-size:.72rem;color:#8a9e9c;text-align:center;margin-top:10px}
.gwj-modal-ty{display:none;text-align:center;padding:32px 24px}
.gwj-modal-ty.show{display:block}
.gwj-modal-ty h3{font-size:1.2rem;font-weight:800;margin:8px 0}
.gwj-modal-ty p{color:#4a5e5d;font-size:.9rem;margin-bottom:16px}
.gwj-modal-ty a{display:inline-flex;align-items:center;padding:12px 24px;background:#0e7a74;color:#fff;border-radius:60px;font-weight:700;font-size:.85rem;text-decoration:none}
.gj-fi{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}
.gj-fi label{font-size:.72rem;font-weight:700;color:#8a9e9c;text-transform:uppercase;letter-spacing:.06em}
.gj-fi input,.gj-fi select,.gj-fi textarea{width:100%;padding:12px 16px;border-radius:12px;border:1.5px solid rgba(0,100,90,.08);background:#faf8f5;font-size:.88rem;color:#1a2e2d;transition:border-color .2s;font-family:'Montserrat',sans-serif;outline:none}
.gj-fi input:focus,.gj-fi select:focus,.gj-fi textarea:focus{border-color:#0e7a74;box-shadow:0 0 0 3px rgba(14,122,116,.1);background:#fff}
.gj-req{color:#c0504a;font-weight:700;margin-left:2px}
.cf-turnstile-wrap{overflow:hidden;width:100%}
@media(max-width:520px){.cf-turnstile-wrap{height:65px}.cf-turnstile{transform:scale(0.78);transform-origin:left center;margin-bottom:-12px;display:block}}
