
:root{--v8-teal:#04546b;--v8-deep:#073b4b;--v8-gold:#d3a248;--v8-cream:#fff9ee;--v8-line:rgba(4,84,107,.15)}
/* Header alignment: wider desktop canvas, controlled two-row fallback, clean mobile rows. */
.top .nav{max-width:1700px!important;width:calc(100% - 24px)!important;grid-template-columns:minmax(245px,285px) minmax(0,1fr) auto!important;gap:10px 12px!important;padding:9px 12px!important;overflow:visible!important}
.top .brand{max-width:285px!important;min-width:0!important;gap:9px!important}
.top .brandLogo{width:58px!important;height:52px!important;min-width:58px!important}
.top .brandText b{font-size:17px!important;letter-spacing:.015em!important}.top .brandText small{font-size:9.5px!important;letter-spacing:.16em!important}
.top .navlinks{gap:4px!important;min-width:0!important;flex-wrap:nowrap!important;justify-content:center!important}
.top .navlinks a,.top .navDropBtn{height:39px!important;min-height:39px!important;padding:0 10px!important;font-size:13.5px!important;white-space:nowrap!important;border-radius:999px!important}
.top .navActions{gap:6px!important;min-width:0!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:flex-end!important}
.top .navActions>.btn{height:40px!important;min-height:40px!important;padding:0 14px!important;font-size:13px!important}.top .navActions>.iconBtn{width:42px!important;height:42px!important;border-radius:15px!important}
.sgvHeaderTools{display:flex;align-items:center;gap:6px;margin-left:0;flex:0 0 auto;min-width:0}.sgvHeaderTool,.sgvLangSelect{min-height:40px;border:1px solid rgba(4,84,107,.18);background:#fff;color:#073b4b;border-radius:999px;padding:8px 11px;font:700 .82rem/1 'Cormorant Garamond',serif;cursor:pointer;white-space:nowrap}.sgvHeaderTool{display:inline-flex;align-items:center;justify-content:center;gap:5px}.sgvHeaderTool:hover,.sgvLangSelect:hover{border-color:rgba(211,162,72,.7);box-shadow:0 8px 24px rgba(4,84,107,.10)}.sgvHeaderTool.primary{background:var(--v8-teal);color:#fff;border-color:var(--v8-teal)}.sgvLangWrap{display:flex;align-items:center;gap:4px;min-width:0}.sgvLangIcon{font-size:.82rem;color:#4f6268;flex:0 0 auto}.sgvLangSelect{width:110px;max-width:110px;padding-right:26px}
@media(max-width:1580px){.top .navlinks a,.top .navDropBtn{padding:0 8px!important;font-size:12.8px!important}.top .brandText b{font-size:16px!important}.top .brandText small{font-size:9px!important}.sgvHeaderTool{padding:8px 9px}.sgvLangIcon{display:none}.sgvLangSelect{width:98px;max-width:98px}}
@media(max-width:1420px){.top .nav{grid-template-columns:minmax(245px,1fr) auto!important}.top .brand{grid-column:1;grid-row:1}.top .navActions{grid-column:2;grid-row:1}.top .navlinks{grid-column:1/-1;grid-row:2;justify-self:stretch!important;justify-content:center!important;overflow-x:auto!important;overflow-y:visible!important;padding:4px 2px 1px!important;scrollbar-width:none!important}.top .navlinks::-webkit-scrollbar{display:none}.top .navActions>.iconBtn{display:none!important}}
@media(max-width:860px){html{scroll-padding-top:190px!important}.top .nav{grid-template-columns:minmax(0,1fr)!important;width:100%!important;padding:9px 10px!important}.top .brand{grid-column:1;grid-row:1;max-width:100%!important}.top .navActions{grid-column:1;grid-row:2;width:100%!important;justify-self:stretch!important;justify-content:stretch!important}.top .navActions>.btn,.top .navActions>.iconBtn{display:none!important}.sgvHeaderTools{width:100%;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,.9fr) minmax(125px,1.2fr);gap:7px}.sgvHeaderTool,.sgvLangSelect{width:100%;max-width:none;min-height:38px;font-size:.78rem}.sgvLangWrap{width:100%}.sgvLangSelect{flex:1}.top .navlinks{grid-column:1;grid-row:3;justify-content:flex-start!important;padding:3px 0 0!important}.top .navlinks a,.top .navDropBtn{font-size:12px!important;height:36px!important;min-height:36px!important;padding:0 10px!important}.mobileHeaderNav{grid-column:1!important;width:100%!important}}
@media(max-width:520px){html{scroll-padding-top:208px!important}.top .brandLogo{width:48px!important;height:43px!important;min-width:48px!important}.top .brandText b{font-size:14px!important}.top .brandText small{font-size:8px!important}.sgvHeaderTools{grid-template-columns:.72fr .9fr 1.25fr}.sgvHeaderTool,.sgvLangSelect{font-size:.74rem;padding:7px 8px}.sgvToolIcon{display:none}}

/* Overlays and search */
.sgvOverlay{position:fixed;inset:0;z-index:10020;background:rgba(2,30,39,.66);backdrop-filter:blur(10px);display:none;align-items:center;justify-content:center;padding:22px}.sgvOverlay.show{display:flex}.sgvPanel{width:min(780px,96vw);max-height:min(88vh,840px);overflow:auto;background:#fff;border:1px solid rgba(255,255,255,.35);border-radius:28px;box-shadow:0 34px 90px rgba(0,0,0,.3);position:relative}.sgvPanelHead{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:24px 26px 16px;border-bottom:1px solid var(--v8-line);position:sticky;top:0;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);z-index:2}.sgvPanelHead h2{margin:0;color:var(--v8-deep);font-size:1.8rem}.sgvPanelHead p{margin:5px 0 0;color:#62767d}.sgvClose{width:42px;height:42px;border-radius:50%;border:1px solid var(--v8-line);background:#fff;color:var(--v8-deep);font-size:1.35rem;cursor:pointer}.sgvPanelBody{padding:24px 26px 28px}.sgvSearchInput{width:100%;padding:16px 18px;border:1px solid rgba(4,84,107,.22);border-radius:16px;font:600 1rem 'Cormorant Garamond',serif;outline:none}.sgvSearchInput:focus{border-color:var(--v8-gold);box-shadow:0 0 0 4px rgba(211,162,72,.12)}.sgvSearchMeta{display:flex;justify-content:space-between;gap:12px;margin:12px 2px;color:#6b7b80;font-size:.84rem}.sgvSearchResults{display:grid;gap:10px}.sgvSearchResult{display:block;text-decoration:none;color:inherit;padding:16px;border-radius:16px;border:1px solid var(--v8-line);background:#fff;transition:.2s}.sgvSearchResult:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(4,84,107,.08);border-color:rgba(211,162,72,.5)}.sgvSearchResult strong{display:block;color:var(--v8-deep);font-size:1.05rem}.sgvSearchResult span{display:block;color:#5f737a;line-height:1.55;margin-top:4px}.sgvEmpty{padding:20px;border-radius:16px;background:#f4fafb;color:#566d75}
/* Forms */
.sgvSmartForm{display:grid;gap:13px}.sgvSmartGrid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.sgvSmartForm label{font-weight:700;color:#294c57;font-size:.9rem}.sgvSmartForm .input{width:100%;margin-top:6px}.sgvSmartHint{font-size:.82rem;color:#687c82;line-height:1.55;margin:0}.sgvFormIntro{padding:14px 16px;border-radius:16px;background:#f4fafb;border:1px solid var(--v8-line);color:#48656e;line-height:1.6}.sgvSuccessMap{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.sgvInlineBtn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:0;border-radius:999px;padding:11px 15px;font-weight:800;background:var(--v8-teal);color:#fff;cursor:pointer}.sgvInlineBtn.secondary{background:#fff;color:var(--v8-teal);border:1px solid var(--v8-line)}
/* Location gate */
.sgvMapSection{padding:68px 0;background:linear-gradient(180deg,#f7fbfc,#fff)}.sgvMapCard{display:grid;grid-template-columns:1.08fr .92fr;gap:24px;align-items:stretch;background:#fff;border:1px solid var(--v8-line);border-radius:28px;overflow:hidden;box-shadow:0 18px 50px rgba(4,84,107,.08)}.sgvMapCopy{padding:34px}.sgvMapCopy h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.05;margin:8px 0 14px;color:var(--v8-deep)}.sgvMapCopy p{line-height:1.7;color:#5e747b}.sgvMapActions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.sgvMapPreview{min-height:350px;background:radial-gradient(circle at 60% 30%,rgba(211,162,72,.18),transparent 28%),linear-gradient(145deg,#073b4b,#04627b);display:grid;place-items:center;padding:28px;color:#fff;text-align:center}.sgvMapPreview strong{font-size:1.4rem}.sgvMapPreview p{color:rgba(255,255,255,.78);line-height:1.6}.sgvMapPin{font-size:3rem;display:block;margin-bottom:8px}.sgvLockedPill{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);font-weight:800;margin-bottom:10px}.sgvQuickTools{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 0}.sgvQuickTools button,.sgvQuickTools a{text-decoration:none;border-radius:999px;padding:11px 15px;font-weight:800;border:1px solid var(--v8-line);background:#fff;color:var(--v8-teal);cursor:pointer}.sgvQuickTools .primary{background:var(--v8-teal);color:#fff}
/* Assistant */
.sgvAssistantBtn{position:fixed;left:18px;bottom:20px;z-index:10005;border:0;border-radius:999px;background:linear-gradient(135deg,#073b4b,#08708c);color:#fff;padding:12px 17px;box-shadow:0 14px 38px rgba(2,41,52,.28);font:800 .9rem 'Cormorant Garamond',serif;cursor:pointer;display:flex;gap:8px;align-items:center}.sgvAssistantBtn i{width:9px;height:9px;border-radius:50%;background:#f0c96d;box-shadow:0 0 14px #f0c96d}.sgvAssistant{position:fixed;left:18px;bottom:76px;z-index:10010;width:min(430px,calc(100vw - 32px));max-height:min(76vh,720px);display:none;flex-direction:column;background:#fff;border:1px solid var(--v8-line);border-radius:24px;box-shadow:0 28px 70px rgba(0,0,0,.25);overflow:hidden}.sgvAssistant.show{display:flex}.sgvAssistantHead{padding:17px 18px;background:linear-gradient(135deg,#073b4b,#04546b);color:#fff;display:flex;justify-content:space-between;gap:12px}.sgvAssistantHead strong{display:block;font-size:1.12rem}.sgvAssistantHead small{display:block;opacity:.8;margin-top:2px}.sgvAssistantClose{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);color:#fff;width:34px;height:34px;border-radius:50%;cursor:pointer}.sgvAssistantBody{padding:14px 14px 16px;overflow:auto}.sgvAssistantIntro{padding:11px 13px;border-radius:14px;background:#f2f8f9;color:#36575f;line-height:1.5;margin-bottom:10px}.sgvChatHistory{display:grid;gap:8px;margin-bottom:10px}.sgvChatRow{display:flex}.sgvChatRow.user{justify-content:flex-end}.sgvChatRow.bot{justify-content:flex-start}.sgvChatBubble{max-width:88%;padding:10px 12px;border-radius:15px;line-height:1.55;font-size:.88rem}.sgvChatRow.user .sgvChatBubble{background:#075d73;color:#fff;border-bottom-right-radius:5px}.sgvChatRow.bot .sgvChatBubble{background:#fff7e7;color:#3f5960;border:1px solid rgba(211,162,72,.2);border-bottom-left-radius:5px}.sgvQuestionView h3{margin:6px 2px 9px;color:#073b4b;font-size:1rem}.sgvAssistantChoices{display:grid;grid-template-columns:1fr;gap:7px}.sgvChoice{width:100%;border:1px solid rgba(4,84,107,.16);background:#fff;color:#064c61;border-radius:14px;padding:10px 12px;font:800 .83rem/1.25 'Cormorant Garamond',serif;cursor:pointer;text-align:left;display:flex;justify-content:space-between;gap:10px;align-items:center}.sgvChoice:after{content:'›';font-size:1.15rem;color:#bd8a2f}.sgvChoice:hover{background:#eef8fa;border-color:#d3a248}.sgvChoice.support{background:#fffaf0;border-color:rgba(211,162,72,.35)}.sgvAssistantActions{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 2px}.sgvAssistantActions button,.sgvAssistantActions a{border:0;text-decoration:none;background:#04546b;color:#fff;border-radius:999px;padding:9px 12px;font:800 .8rem 'Cormorant Garamond',serif;cursor:pointer}.sgvAssistantActions .secondary{background:#fff;color:#04546b;border:1px solid var(--v8-line)}.sgvAssistantPrivacy{font-size:.72rem;color:#78898e;margin:10px 2px 0;line-height:1.45}.sgvHistoryLabel{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#8a6a25;margin:10px 2px 5px;font-weight:800}
.trafficCell{min-width:260px;max-width:380px;white-space:normal!important;line-height:1.45}
@media(max-width:860px){.sgvMapCard{grid-template-columns:1fr}.sgvMapPreview{min-height:280px}.sgvSmartGrid{grid-template-columns:1fr}.sgvAssistantBtn{bottom:calc(88px + env(safe-area-inset-bottom));left:12px}.sgvAssistant{left:12px;bottom:calc(140px + env(safe-area-inset-bottom))}}
@media(max-width:520px){.sgvPanel{border-radius:22px}.sgvPanelHead,.sgvPanelBody{padding-left:17px;padding-right:17px}.sgvMapCopy{padding:24px}.sgvAssistantBtn{font-size:.8rem;padding:11px 13px}.sgvAssistant{width:calc(100vw - 24px)}}
@media(prefers-reduced-motion:reduce){.sgvSearchResult,.sgvHeaderTool{transition:none!important}}
/* Respect HTML hidden state even when component display rules are declared above. */
.sgvAssistantActions[hidden],.sgvSuccessMap[hidden],.sgvQuestionView[hidden],.sgvHistoryLabel[hidden]{display:none!important}
/* Tablet/laptop menu: when the existing hamburger appears, keep main links collapsed until it is opened. */
@media (max-width:1180px) and (min-width:701px){
  .top .nav{position:relative!important;grid-template-columns:minmax(235px,1fr) auto 48px!important;align-items:center!important}
  .top .brand{grid-column:1!important;grid-row:1!important}
  .top .navActions{grid-column:2!important;grid-row:1!important;width:auto!important}
  .top .menuToggle{grid-column:3!important;grid-row:1!important;display:block!important;justify-self:end!important}
  .top #mainNav.navlinks{position:absolute!important;top:calc(100% + 8px)!important;left:12px!important;right:12px!important;z-index:4000!important;display:none!important;grid-column:auto!important;grid-row:auto!important;flex-direction:column!important;align-items:stretch!important;gap:5px!important;padding:14px!important;background:#fff!important;border:1px solid rgba(4,84,107,.14)!important;border-radius:20px!important;box-shadow:0 22px 60px rgba(5,44,57,.2)!important;max-height:calc(100dvh - 110px)!important;overflow-y:auto!important}
  .top #mainNav.navlinks.is-open{display:flex!important}
  .top #mainNav.navlinks>a,.top #mainNav.navlinks .navDropBtn{width:100%!important;justify-content:center!important}
}
