/* ===== SHARED NAV (dropdowns) ===== */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(255,255,255,.82);backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid transparent;transition:.3s}
.nav.scrolled{border-bottom-color:var(--line);box-shadow:0 4px 20px rgba(0,0,0,.03)}
.nav-inner{max-width:var(--maxw);margin:0 auto;padding:0 24px;height:74px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:12px;cursor:pointer}
.brand img{height:38px;width:auto}
.brand .bt{font-family:var(--disp);font-weight:700;font-size:15px;letter-spacing:.16em;line-height:1}
.brand .bt small{display:block;font-size:9px;letter-spacing:.34em;color:var(--muted);font-weight:500;margin-top:3px}
.nav-links{display:flex;align-items:center;gap:6px}
.nav-item{position:relative}
.nav-item>a{display:inline-flex;align-items:center;gap:5px;font-size:14.5px;font-weight:500;color:var(--ink-2);transition:.2s;padding:10px 14px;border-radius:10px}
.nav-item>a:hover,.nav-item.active>a{color:var(--violet)}
.nav-item>a .caret{width:15px;height:15px;transition:.25s;opacity:.6}
.nav-item:hover>a .caret{transform:rotate(180deg)}
.nav-dd{position:absolute;top:calc(100% + 6px);left:0;min-width:248px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s;z-index:120}
.nav-item:hover .nav-dd{opacity:1;visibility:visible;transform:translateY(0)}
.nav-dd::before{content:"";position:absolute;top:-8px;left:0;right:0;height:8px}
.nav-dd a{display:flex;flex-direction:column;gap:2px;padding:11px 14px;border-radius:10px;transition:.15s}
.nav-dd a:hover{background:var(--paper-2)}
.nav-dd a b{font-size:14.5px;font-weight:600;color:var(--ink)}
.nav-dd a span{font-size:12.5px;color:var(--muted)}
.nav-dd a:hover b{color:var(--violet)}
.nav-cta{background:var(--ink);color:#fff!important;padding:11px 20px!important;border-radius:100px!important;font-size:14px;font-weight:600;transition:.25s;margin-left:6px}
.nav-cta:hover{background:var(--violet)!important;transform:translateY(-1px)}
.nav-cta .caret{filter:none}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px}
.burger span{width:24px;height:2px;background:var(--ink);transition:.3s;border-radius:2px}
/* mobile */
.mobile-menu{display:none;position:fixed;inset:74px 0 0;background:#fff;z-index:99;padding:20px 24px 40px;flex-direction:column;gap:2px;overflow-y:auto}
.mm-group{border-bottom:1px solid var(--line)}
.mm-head{display:flex;align-items:center;justify-content:space-between;font-family:var(--disp);font-size:21px;font-weight:600;padding:16px 0;cursor:pointer;width:100%;background:none;border:0;text-align:left;color:var(--ink)}
.mm-head .caret{width:14px;height:14px;transition:.25s;opacity:.5}
.mm-group.open .mm-head .caret{transform:rotate(180deg)}
.mm-sub{max-height:0;overflow:hidden;transition:max-height .3s ease}
.mm-group.open .mm-sub{max-height:400px}
.mm-sub a{display:block;font-size:16px;font-weight:500;color:var(--muted);padding:10px 0 10px 14px;border-left:2px solid var(--line)}
.mm-sub a:hover{color:var(--violet);border-left-color:var(--violet)}
.mm-solo{font-family:var(--disp);font-size:21px;font-weight:600;padding:16px 0;display:block;border-bottom:1px solid var(--line)}
.mm-cta{margin-top:22px;text-align:center;font-size:17px;padding:16px 22px;color:#fff!important;background:var(--ink);border-radius:100px;justify-content:center;gap:8px}
.mm-cta .caret{filter:none}
.mm-group-cta{border-bottom:0}
.mm-group-cta .mm-sub a{border-left-color:var(--line)}
@media(max-width:980px){.nav-links{display:none}.burger{display:flex}.mobile-menu.open{display:flex}body.locked{overflow:hidden}}

/* nested Dry Eye Centre submenu (desktop flyout + mobile indent) */
.nav-dd-item{position:relative}
.nav-sub{position:absolute;top:-8px;left:calc(100% + 6px);min-width:210px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);padding:8px;opacity:0;visibility:hidden;transform:translateX(8px);transition:.22s;z-index:130}
.nav-dd-item:hover .nav-sub{opacity:1;visibility:visible;transform:translateX(0)}
.nav-sub a{display:block!important;padding:10px 14px!important;font-size:14px!important;font-weight:500;color:var(--ink-2)}
.nav-sub a:hover{background:var(--paper-2);color:var(--violet)}
.mm-sub a.mm-nested{padding-left:30px;font-size:14.5px;color:var(--muted);position:relative}
.mm-sub a.mm-nested::before{content:"";position:absolute;left:14px;top:50%;width:6px;height:1px;background:var(--line)}
