/* Go Lake Travis: shared styles for Contact, Register, Login and Boat Club pages (Oct 21 2026) */
.glf { --glf-ink:#1E3A4C; --glf-blue:#0091C8; --glf-deep:#0E6E9A; --glf-sky:#62ABCC; --glf-line:#D6E6EE; --glf-soft:#EAF5FA; font-family:'Trebuchet MS',Verdana,Arial,sans-serif; color:#333; font-size:14px; line-height:1.55; padding:0 0 30px 0; box-sizing:border-box; }
.glf *, .glf *::before, .glf *::after { box-sizing:border-box; }
/* section heading, same as the home page "Local Favorites" heading */
.lsah-heading { margin:30px 0 18px 0; padding:0; font-family:'Montserrat','Helvetica Neue',Arial,sans-serif; font-weight:700; font-size:26px; line-height:1.2; letter-spacing:-0.2px; color:#1E3A4C; text-align:left; background:none; border:none; box-shadow:none; }
.lsah-heading .glt-kick { display:block; font-size:12px; font-weight:600; letter-spacing:2.5px; text-transform:uppercase; color:#62ABCC; margin-bottom:6px; }
.lsah-heading .glt-title { display:inline-block; }
.lsah-heading .glt-title::after { content:''; display:block; width:48px; height:3px; border-radius:2px; background:#62ABCC; margin-top:10px; }
.glf > .lsah-heading:first-child { margin-top:6px; }
.glf p { font-size:14px; line-height:1.6; color:#33474F; }
.glf .glf-lead { margin:0 0 20px 0; max-width:640px; }
.glf a { color:var(--glf-deep); }
.glf-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:18px; align-items:start; }
@media (min-width:900px) { .glf-grid.glf-2col { grid-template-columns:minmax(0,1.65fr) minmax(190px,1fr); } }
.glf-card { background:#FFFFFF; border:1px solid var(--glf-line); border-top:6px solid var(--glf-blue); border-radius:14px; box-shadow:0 6px 18px rgba(14,110,154,0.10); padding:20px 18px; margin:0 0 18px 0; }
.glf-grid > .glf-card, .glf-aside > .glf-card:last-child { margin-bottom:0; }
@media (min-width:600px) { .glf-card { padding:24px 24px; } }
.glf-aside { display:grid; gap:18px; }
.glf-aside .glf-card { border-top-width:4px; padding:18px; }
.glf-card-title { margin:0 0 12px 0; font-family:'Montserrat','Helvetica Neue',Arial,sans-serif; font-weight:700; font-size:17px; line-height:1.3; color:var(--glf-ink); }
.glf-card-sub { margin:-6px 0 16px 0 !important; font-size:13px !important; color:#4A7888 !important; }
.glf-field { margin:0 0 16px 0; }
.glf-row2 { display:grid; grid-template-columns:minmax(0,1fr); gap:0 14px; }
@media (min-width:520px) { .glf-row2 { grid-template-columns:minmax(0,1fr) minmax(0,1fr); } }
.glf-label { display:block; margin:0 0 6px 0; font-family:'Montserrat','Helvetica Neue',Arial,sans-serif; font-weight:600; font-size:13px; letter-spacing:0.2px; color:var(--glf-ink); }
.glf-label .glf-opt { font-weight:500; color:#6B8C99; font-size:12px; }
.glf input.glf-input, .glf textarea.glf-input { display:block; width:100%; margin:0; padding:11px 13px; font:16px/1.4 Arial,'Helvetica Neue',sans-serif; color:var(--glf-ink); background:#FBFEFF; border:1px solid #B9D3DF; border-radius:10px; -webkit-appearance:none; appearance:none; transition:border-color .15s, box-shadow .15s, background-color .15s; }
.glf textarea.glf-input { min-height:150px; resize:vertical; }
.glf input.glf-input::placeholder, .glf textarea.glf-input::placeholder { color:#8AA5B0; }
.glf input.glf-input:hover, .glf textarea.glf-input:hover { border-color:#8FBBCD; }
.glf input.glf-input:focus, .glf textarea.glf-input:focus { outline:none; border-color:var(--glf-blue); background:#FFFFFF; box-shadow:0 0 0 3px rgba(0,145,200,0.25); }
.glf input.glf-input[readonly] { background:var(--glf-soft); color:#4A7888; border-color:var(--glf-line); }
.glf-help { display:block; margin:6px 0 0 0; font-size:12px !important; line-height:1.4 !important; color:#4A7888 !important; }
.glf-math { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.glf-math .glf-eq { font:700 18px Montserrat,Arial,sans-serif; color:var(--glf-ink); }
.glf input.glf-input.glf-math-q { width:96px; text-align:center; font-weight:bold; }
.glf input.glf-input.glf-math-a { width:96px; text-align:center; }
.glf-actions { margin:22px 0 0 0; display:flex; flex-wrap:wrap; align-items:center; gap:14px 18px; }
.glf input.glf-btn, .glf a.glf-btn, .glf button.glf-btn { display:inline-flex; align-items:center; justify-content:center; width:100%; min-height:48px; margin:0; padding:13px 28px; font:700 15px/1.2 'Montserrat','Helvetica Neue',Arial,sans-serif; letter-spacing:0.3px; color:#1E3A4C; text-align:center; text-decoration:none; text-shadow:none; background:linear-gradient(to bottom,#FFD54A,#F2B400); border:1px solid #D9A200; border-radius:999px; box-shadow:0 3px 10px rgba(242,180,0,0.35); cursor:pointer; -webkit-appearance:none; appearance:none; transition:transform .12s, box-shadow .12s, filter .12s; }
@media (min-width:600px) { .glf input.glf-btn, .glf a.glf-btn, .glf button.glf-btn { width:auto; } }
.glf input.glf-btn:hover, .glf a.glf-btn:hover { filter:brightness(1.04); transform:translateY(-1px); box-shadow:0 5px 14px rgba(242,180,0,0.45); color:#1E3A4C; }
.glf input.glf-btn:active, .glf a.glf-btn:active { transform:translateY(0); }
.glf input.glf-btn:focus-visible, .glf a.glf-btn:focus-visible, .glf a:focus-visible, .glf input[type=checkbox]:focus-visible { outline:3px solid var(--glf-deep); outline-offset:3px; }
.glf a.glf-btn-sm { min-height:40px; padding:9px 18px; font-size:13px; width:auto; }
.glf-link { font-size:13px; font-weight:bold; }
.glf-alert { margin:0 0 18px 0; padding:14px 16px; border-radius:12px; font-size:14px; line-height:1.5; border:1px solid; border-left-width:6px; }
.glf-alert p { margin:0; color:inherit !important; text-align:left !important; font-size:14px !important; }
.glf-alert a { color:inherit !important; text-decoration:underline; font-weight:bold; }
.glf-alert-err { background:#FDF0EF; border-color:#EBB4AF; border-left-color:#B3261E; color:#7A1712; }
.glf-alert-info { background:var(--glf-soft); border-color:var(--glf-line); border-left-color:var(--glf-blue); color:var(--glf-ink); }
.glf-alert-ok { background:#EDF8F0; border-color:#BFE3C9; border-left-color:#2E8B57; color:#1E4D2B; }
.glf-info-list { margin:0; padding:0; list-style:none; }
.glf-info-list li { display:flex; align-items:center; gap:10px; margin:0 0 10px 0; font-size:14px; line-height:1.45; }
.glf-info-list li:last-child { margin-bottom:0; }
.glf-info-list img { width:34px; height:34px; flex:0 0 34px; border-radius:50%; }
.glf-info-list a { color:var(--glf-ink); text-decoration:none; font-weight:bold; }
.glf-info-list a:hover { color:var(--glf-blue); text-decoration:underline; }
.glf-address { font-style:normal; font-size:14px; line-height:1.6; color:#33474F; }
.glf-cta { background:linear-gradient(135deg,#0091C8,#0E6E9A); border:0; color:#FFFFFF; }
.glf-cta .glf-card-title { color:#FFFFFF; }
.glf-cta p { color:#E6F4FA !important; margin:0 0 14px 0 !important; }
.glf-check { display:flex; align-items:flex-start; gap:10px; margin:0 0 8px 0; font-weight:bold; color:var(--glf-ink); cursor:pointer; }
.glf-check input[type=checkbox] { width:20px; height:20px; margin:1px 0 0 0; accent-color:var(--glf-blue); flex:0 0 20px; }
.glf-bullets { margin:6px 0 0 0; padding:0 0 0 22px; }
.glf-bullets li { margin:0 0 4px 0; color:#33474F; font-size:14px; line-height:1.5; }
.glf-feature { margin:0 0 12px 0; padding:14px 16px; background:#F7FBFD; border:1px solid var(--glf-line); border-left:5px solid var(--glf-sky); border-radius:10px; }
.glf-feature-title { margin:0 0 4px 0; font-family:'Montserrat','Helvetica Neue',Arial,sans-serif; font-weight:700; font-size:15px; color:var(--glf-deep); }
.glf-feature p { margin:0; }
.glf-inline { display:flex; flex-direction:column; gap:12px; }
@media (min-width:600px) { .glf-inline { flex-direction:row; align-items:stretch; } .glf-inline .glf-input { flex:1 1 auto; } }
.glf p + p { margin-top:12px; }
@media (max-width:700px) { .glf { padding-left:12px; padding-right:12px; } }
